目录
在这一段如果遇到报错IPV4,就是说明你的docker桥段已经满了,没有多余的了,那么就可以重新创建一个网桥。
1.docker attach:连接到一个正在运行的容器的终端
7.docker pull:从 Docker Hub 拉取一个镜像
8.docker build:从 Dockerfile 构建一个镜像
一、打包Docker镜像
1.打包介绍
# Docker镜像打包成tar文件指南
在本教程中,我们将介绍如何将Docker镜像打包成一个tar文件,并创建一个容器环境。具体步骤如下:
## 一、将Docker镜像打包成tar文件
### 1. 确认Docker镜像存在
首先,确保你要打包的Docker镜像已经存在于本地Docker环境中。你可以使用以下命令列出所有本地的Docker镜像:
```bash
docker images
2.打包命令
假设你要打包的镜像名为my_image
,标签为latest
。
使用docker save
命令将Docker镜像打包成tar文件:
docker save -o my_image.tar my_image:latest
在上述命令中,my_image.tar
是你希望生成的tar文件的名称,my_image:latest
是你要打包的Docker镜像的名称和标签。
二、创建容器环境
1. 上传tar文件
将生成的my_image.tar
文件上传到你的服务器。你可以使用rz
命令来上传:
rz my_image.tar
如果在上传过程中出现权限问题,例如“reit /proc/self/attr/keycreate: permission denied”,可以通过以下命令临时关闭SELinux:
/usr/sbin/setenforce 0
2. 加载Docker镜像
在服务器上加载刚刚上传的Docker镜像:
docker load -i my_image.tar
3. 运行Docker容器
加载完成后,运行以下命令启动一个新的Docker容器:
docker run -itd -p 5006:5006 --env LANG="zh_CN.UTF-8" --name my_container my_image:latest /bin/bash
在这一段如果遇到报错IPV4,就是说明你的docker桥段已经满了,没有多余的了,那么就可以重新创建一个网桥。
首先要删除已经创建失败的my_container这个镜像:docker rm my_container
再执行命令:4、5步
4. 创建网络桥
为了使多个容器能够相互通信,我们需要创建一个Docker网络桥:
docker network create --driver bridge my_network
5. 运行并更新绑定桥
最后,我们运行另一个容器,并将其连接到刚刚创建的网络桥:
docker run -itd -p 5006:5006 --name my_container --network my_network my_image:latest /bin/bash
这样,我们就成功地将Docker镜像打包成tar文件,并创建了一个Docker容器环境,并且配置了网络桥,使得容器之间可以通信。
三、docker中常用命令:
1.docker attach:连接到一个正在运行的容器的终端
docker attach my_container
这里的 my_container
是你想要连接的容器的名字或 ID。
2.docker restart:重启一个容器
docker restart my_container
这里的 my_container
是你想要重启的容器的名字或 ID。
3.docker run:创建并运行一个新的容器
docker run -d --name my_container nginx
这个命令会从 nginx
镜像创建并后台运行一个名为 my_container
的容器。
4.docker ps:列出正在运行的容器
docker ps
5.docker ps -a:列出所有容器,包括停止的容器
docker ps -a
6.docker images:列出本地的所有镜像
docker images
7.docker pull:从 Docker Hub 拉取一个镜像
docker pull ubuntu
8.docker build:从 Dockerfile 构建一个镜像
docker build -t my_image .
这里的 -t my_image
是为构建的镜像指定一个名字,.
表示 Dockerfile 所在的当前目录。
9.docker exec:在一个正在运行的容器中执行命令
docker exec -it my_container /bin/bash
这里的 -it
参数用于交互式终端,/bin/bash
是要执行的命令。
10.docker stop:停止一个正在运行的容器
docker stop my_container
11.docker rm:删除一个容器
docker rm my_container
12.docker rmi:删除一个镜像
docker rmi my_image
13.docker logs:查看容器的日志
docker logs my_container
14.docker network ls:列出所有网络
docker network ls
15.docker volume ls:列出所有卷
docker volume ls