Docker基础命令
# 简介
- 下载镜像
- 启动容器
- 修改页面
- 保存镜像
- 分享社区
# 容器
用镜像启动的应用成为容器

# 开通服务器
这里使用
MobaXterm连接服务器为例
输入连接远程主机ip,默认登录用户
可以拖动文件进行文件上传下载
# 安装Docker
移除旧版本docker
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc | cut -f1)1配置apt软件源
# Add Docker's official GPG key: sudo apt update sudo apt install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # Add the repository to Apt sources: sudo tee /etc/apt/sources.list.d/docker.sources <<EOF Types: deb URIs: https://download.docker.com/linux/ubuntu Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") Components: stable Signed-By: /etc/apt/keyrings/docker.asc EOF sudo apt update1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17安装 最新 docker
docker-cedocker引擎docker-ce-clidocker引擎命令行程序containerd.io容器docker-buildx-plugin构建镜像的插件docker-compose-plugin批量工具sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin1启动docker
安装完成后,Docker 服务会自动启动。
检查是否在运行
sudo systemctl status docker1手动启动
sudo systemctl start docker # 开机也启动 sudo systemctl enable docker1
2
3
# 以安装Nginx为例
下载镜像-启动容器-修改页面-保存镜像-分享社区
# 下载镜像
docker pull nginx
# 查看镜像
docker images
# 启动容器
docker run nginx
# 或者这样启动
# 访问服务器到达Nginx默认页,端口映射
docker run -d --name mynginx -p 80:80 nginx
# 查看运行的应用
docker ps
# 进入容器
docker exec -it mynginx /bin/bash
# 修改页面
# 进入Nginx文件路径
cd /usr/share/nginx/html
echo "<h1>Hello</h1>" index.html
# 后续使用docker的存储,把内部的文件夹直接映射外部主机位置,直接在主机位置改
# 保存镜像
# 提交
docker commit -m "update" mynginx mynginx:v1.0
# 查看镜像(可以查看已提交的)
docker images
# 保存(将镜像保存成文件)
docker save -o mynginx.tar mynginx:v1.0
# 查看该路径(可以查看已保存的)
ls
# 加载
docker load -i mynginx.tar
# 检查镜像
docker images
# 运行镜像
docker run -d --name app01 -p 80:80 mynginx:v1.0
# 检查是否开启成功
docker ps
# 分享社区
docker login
docker tag mynginx:v1.0 hiu/mynginx:v1.0
docker push hiu/mynginx:v1.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# 存储
容器一启动,是启动一个独立的文件系统;容易一销毁,文件系统内容也销毁;
# 目录挂载
允许在自己的机器外面开辟一个目录,指向容器的目录;在外面目录修改直接影响内部目录的内容
docker run -d -p 80:80 -v /app/nghtml:/usr/share/nginx/html --name app01 nginx
cd /app/nghtml
echo 2222 > index.html
1
2
3
4
2
3
4
# 卷映射
用于更新容器中的配置文件
docker run -d -p 99:80 -v /app/nghtml:/usr/share/nginx/html -v ngconf:/etc/nginx --name app03 nginx
1
docker配置文件统一路径/var/lib/docker/volumes/<volumes-name>下的_data
# 列出卷
docker volumes ls
# 创建卷
docker volumes xx
# 查看卷详情
docker volumes inspect ngconf
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 网络
# 获取容器的信息
docker inspect app1
# http://172.17.0.2
docker inspect app2
# http://172.17.0.3
# 在app1容器查看app2的内容
curl http://172.17.0.3:80
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
上次更新: 2025/12/17, 06:05:51