文章目录
docker使用基本方式
查看镜像
docker images
获取镜像
docker pull
删除镜像
docekr rmi 镜像id
导出镜像
docker save -o /xxx/xxx/xxxx/file_name.tar image_name:version
加载镜像
docker load -i file_name.tar
创建容器
docker run -itd centos:latest /usr/sbin/init
删除容器
docker rm containerID
查看所有容器
docker ps -a 查看所有状态容器
docker container ls -a 查看所有状态容器
docker ps 查看运行状态容器
关闭容器
docker stop <container_id>
创建docker网络
docker network create --driver bridge --subnet 172.21.0.0/24 --gateway=172.21.0.1 cdh_net
参数说明
--driver 网络驱动
--subnet 子网ip
--gateway 网关
cdh_net 网络名称
docker network create --driver bridge --subnet 172.19.0.0/24 --gateway=172.19.0.1 cdh_net
- 桥接网络(bridge network):这种网络模式会为每个容器创建一个虚拟网络桥接,容器之间可以相互通信,也可以与外部网络通信。每个容器都有自己的 IP 地址,并且可以通过 Docker 宿主机访问外部网络。
- 主机网络(host network):在主机网络模式下,容器与宿主机共享同一个网络命名空间,容器使用宿主机的网络直接进行通信。这样可以提高网络性能,但会导致容器与宿主机共享网络端口。
- 覆盖网络(overlay network):覆盖网络是一种跨主机连接容器的虚拟网络,适用于分布式应用程序或集群环境。它允许不同 Docker 守护进程上的容器相互通信,使得容器可以跨越多个主机实现网络通信。
Docker 使用子网 IP 地址来为容器分配 IP 地址。当你创建一个 Docker 网络时,你可以指定一个子网 (subnet),Docker 会从该子网中自动分配 IP 地址给新创建的容器。这样每个容器都有一个独立的 IP 地址,使它们可以相互通信并与外部网络进行交互。
在 Docker 网络中,网关(gateway)是一个特殊的网络设备,用于连接 Docker 容器网络和外部网络。每个 Docker 网络都会有一个网关,负责将容器内部流量路由到外部网络,以及将来自外部网络的流量路由到容器。通常情况下,Docker 容器的默认网关 IP 地址为所属网络的第一个可用 IP 地址。
查看docekr网络
docker network ls
查看镜像
docker images
拉取镜像
docker pull [options] name:target
ex:docker pull nginx:1.20.1
启动容器
docker run -it -d --name cdh01 --network=cdh_net --ip=172.21.0.101 -p2227:22 -p8080:8080 -p8000:8000/udp -p7183:7183 -p7180:7180 -p9870:9870 -p16010:16010 -p18088:18088 --restart always --privileged=true centos:latest /usr/sbin/init
docker run -it -d --name cdh01 --network=cdh_net --ip=172.19.0.4 -p2227:22 -p8080:8080 -p8000:8000/udp -p7183:7183 -p7180:7180 -p9870:9870 -p16010:16010 -p18088:18088 --restart always --privileged=true centos:latest /usr/sbin/init
docker run -it -d --name cdh02 --network=cdh_net --ip=172.19.0.2 -p2228:22 --restart always --privileged=true centos:latest /usr/sbin/init
docker run -it -d --name cdh03 --network=cdh_net --ip=172.19.0.3 -p2229:22 --restart always --privileged=true centos:latest /usr/sbin/init
docker run: 命令用于创建并启动一个新的容器。
-it: 分配一个伪终端(TTY)并保持标准输入打开。
-d: 在后台运行容器。
--name cdh01: 为容器指定名称为 cdh01。
--network=cdh_net: 将容器连接到名为 cdh_net 的网络。
--ip=172.21.0.101: 为容器分配 IP 地址 172.21.0.101。
-p2227:22: 将容器的 SSH 服务端口 22 映射到宿主机的端口 2227。
-p8080:8080: 将容器的端口 8080 映射到宿主机的端口 8080。
-p8000:8000/udp: 将容器的 UDP 端口 8000 映射到宿主机的端口 8000。
-p7183:7183, -p7180:7180, -p9870:9870, -p16010:16010, -p18088:18088: 将容器中相应的端口映射到宿主机。
--restart always: 设置容器总是在 Docker 守护程序重启时自动启动。
--privileged=true: 赋予容器特权,允许容器对宿主机进行一些特权操作。
centos:latest: 使用的基础镜像为 CentOS 最新版本。
/usr/sbin/init: 在容器中指定要执行的命令,这里是启动 init 进程。
标签:容器,network,--,网络,常用命令,镜像,docker
From: https://blog.csdn.net/weixin_43322583/article/details/141439486