Docker安装和部署

Docker 安装和部署

环境准备

主机名 ip ip 配置
docker01 10.0.0.101 172.16.1.101 1h1g
docker02 10.0.0.102 172.16.1.102 1h1g

安装 Docker

使用清华源下载 dockerTP

image-20230907151958247

image-20230907152116823

# 下载docker 官方源
[root@docker01 ~]# wget -O /etc/yum.repos.d/docker-ce.repo  https://download.docker.com/linux/centos/docker-ce.repo
 
# 替换为清华源下载地址
[root@docker01 ~]# sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
 
# 下载docker
[root@docker01 ~]# yum install -y docker-ce docker-ce-cli containerd.io
 
# 查看docker客户端版本
[root@db01 ~]# docker version 
Client: Docker Engine - Community
 Version:           24.0.6
 API version:       1.43
 Go version:        go1.20.7
 Git commit:        ed223bc
 Built:             Mon Sep  4 12:35:25 2023
 OS/Arch:           linux/amd64
 Context:           default
 
# 启动docker服务端
[root@docker01 ~]# systemctl start docker
 
# 查看docker服务端版本
[root@docker01 ~]# docker version 
Client: Docker Engine - Community
 Version:           24.0.6
 API version:       1.43
 Go version:        go1.20.7
 Git commit:        ed223bc
 Built:             Mon Sep  4 12:35:25 2023
 OS/Arch:           linux/amd64
 Context:           default
 
Server: Docker Engine - Community
 Engine:
  Version:          24.0.6
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.7
  Git commit:       1a79695
  Built:            Mon Sep  4 12:34:28 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.22
  GitCommit:        8165feabfdfe38c65b599c4993d227328c231fca
 runc:
  Version:          1.1.8
  GitCommit:        v1.1.8-0-g82f18fe
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
 
查看docker详细信息
[root@db01 ~]# docker info

配置 docker 镜像加速

位置:/etc/docker
文件名:damon.json

image-20230907112728874

image-20230907112754183

image-20230907112506788

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://7t3bpp45.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker

运行第一个容器

# 运行容器前
[root@docker01 ~]# docker images
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE
 
## alpine是占容量最小的操作系统
 
# 使用docker运行容器alpine这个操作系统并打印"Hello World"
[root@docker01 ~]# docker run alpine /bin/echo "Hello World"
Unable to find image 'alpine:latest' locally
latest: Pulling from library/alpine
59bf1c3509f3: Pull complete 
Digest: sha256:21a3deaa0d32a8057914f36584b5288d2e5ecc984380bc0118285c70fa8c9300
Status: Downloaded newer image for alpine:latest
Hello World
 
# 运行容器后
[root@docker01 ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
alpine       latest    c059bfaa849c   21 months ago   5.59MB

docker 镜像站

TP

docker 使用相关命令 - 镜像

# 拉镜像
镜像名称:镜像仓库名:标签
docker pull alpine:latest
当拉取镜像时不填写标签时会默认latest
## 拉取centos7镜像
[root@db01 ~]# docker pull centos:7
 
# 查看镜像
docker image ls
docker images
 
# 只查看所有镜像ID
docker images -q
 
# 搜索镜像
docker search 镜像名
 
# 删除镜像
docker rmi alpine:latest(镜像名:标签)\镜像ID

# 包容器打包为镜像
docker commit web01 web01:1
 
# 保存镜像
docker save alpine:latest -o /tmp/alpine_latest.tgz
docker save alpine:latest > /tmp/alpine_latest.tgz
docker save 镜像名:标签 -o /URL/镜像包
 
# 导入镜像
docker load -i /root/alpine_latest.tgz
docker load < /root/alpine_latest.tgz
docker load < 镜像包名
 
# 导出镜像
[root@docker01 ~]# docker save alpine:latest -o /tmp/alpine_latest.tgz
[root@docker01 ~]# scp /tmp/alpine_latest.tgz 172.16.1.52:/root
[root@docker02 ~]# docker load < /root/alpine_latest.tgz 
[root@docker02 ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
alpine       latest    c059bfaa849c   21 months ago   5.59MB
 
# 打标签
docker tag imageID 新镜像名:新标签

docker 使用相关命令 - 容器

# 查看所有容器
docker ps -a
 
# 只查看所有容器ID
docker ps -a -q
 
# 查看正在运行的容器
docker ps
 
# 删除容器
docker rm 容器名\容器ID
 
# 快捷删除容器
docker rm $(docker ps -a -q)
 
# 停止容器(需要运行过的容器)
docker stop 容器ID
 
# 启动容器(需要运行过的容器)
docker start 容器ID
 
# 把容器的bash放在后台运行(第一次启动容器)
docker run -it -d 镜像名:标签 bash 
 
# 进入容器的bash
docker exec -it 容器ID bash

容器名词解析

# 查询容器进程
[root@web01 ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
10b069b91955   ubuntu    "bash"    8 seconds ago   Up 7 seconds             busy_lalande
 
CONTAINER ID # docker ID
IMAGE # 镜像名
COMMAND # 守护进程命令
CREATED # 创建的时间点
STATUS # 运行时长
PORTS # 端口状态
NAMES # 容器名
posted @ 2023-10-08 15:05  普里莫  阅读(82)  评论(0)    收藏  举报