学习网站:www.mayikt.com
-
进入容器: docker exec -it tomcat8082 bash
-
查看容器状态: docker inspect 容器名称
- 查看容器IP地址: docker inspect --format=’{{.NetworkSettings.IPAddress}}’ mysql5.7
- 查看容器运行状态: docker inspect --format ‘{{.Name}} {{.State.Running}}’ nginx
- 查看容器的进程: docker top mysql5.7
-
查看容器端口号; docker port nginx
-
Docker网络模式:
- 查看docker网络模式; docker network ls
- 自定义网络模式; docker network create customer_network
- 删除网络模式: docker network rm customer_network
- 查看网桥信息: docker network inspect bridge
-
创建容器的时候指定网络模式(默认为bridge 桥模式)
- bridge模式: docker run -d -p 8081:8080 --name tomcat8081 tomcat:8.5.40 【默认为bridge模式,需要进行端口映射,主机端口映射到容器里面去】
- host模式: docker run -d -p 8083:8080 --network host --name tomcat8083 tomcat:8.5.40 【host模式使用主机的IP和端口,切记不要端口冲突】
- none模式: docker run -d -p 8085:8080 --network none --name tomcat8085 tomcat:8.5.40 【none模式相当于是一个纯净版,没有网卡、IP和路由信息等】
- container模式:
- docker run -it --name customerNetwork01 alpine /bin/sh
- docker run -it --name customerNetwork02 --network container:customerNetwork01 alpine /bin/sh 【customerNetwork02容器共享customerNetwork01的网络,他们不是共享宿主机】
- 自定义网络模式(*):【compose 指定我们的网络:容器名称转换成IP,项目链接地址使用网络名称,端口号还是使用mysql:3306,redis:6379】
- 新建自定义网络:
- 查看网络模式 : docker network ls 【网络名称不能重复】
- 自定义网络: docker network create customerNetwork_network
- 创建容器的时候指定自定义网络:
- docker run -d -p 8080:8080 --network customerNetwork_network --name tomcat8080 tomcat:8.5.40
- docker run -d -p 8081:8080 --network customerNetwork_network --name tomcat8081 tomcat:8.5.40
- 新建自定义网络:
Compose模板文件
version: '3.0'
services:
tomcat80: ##服务名称
#container_name: tomcat8080 指定容器名称
image: tomcat:8 #镜像文件名称 run images
ports: ###端口号的映射 -p
- 8080:8080
volumes: ## 数据源 宿主机与容器数据共享 -v
- /usr/tomcat/webapps:/usr/local/tomcat/webapps
networks: ###定义网络的桥
- customerNetwork
tomcat81: ##服务名称
#container_name: tomcat8080 指定容器名称
image: tomcat:8 #镜像文件名称
ports: ###端口号的映射
- 8081:8080
volumes: ## 数据源 宿主机与容器数据共享
- /usr/tomcat/webapps:/usr/local/tomcat/webapps
networks:
- customerNetwork
networks: ## 定义服务的桥
customerNetwork: