Docker:
作用:在linux系统下,在单机中通过docker模拟独立ip段的服务器,从而为分布式/集群作更多测试操作
1. 容器, container
2. 镜像, image
3. 记录中心, registry
Docker的基础命令:
1.查看镜像
docker images
2.搜索镜像
docker search 镜像关键词
例: docker search tomcat
docker search centos
docker search portainer
3.镜像拉取
docker pull 镜像name:版本
例: docker pull centos:7
docker pull portainer/portainer
docker pull tomcat
注:如果镜像名后面不加版本,则默认下载最新版:latest
4.删除镜像
docker rmi 镜像name:版本/镜像id
例: docker rmi tomcat
docker rmi f00053549b52
5.删除所有镜像
docker rmi `docker images -q`
6.生成容器
docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像name:版本/镜像id
例: docker run -d -p 8888:8080 --name tomcat1 tomcat
docker run -d -p 8880:8080 --name tomcat1 tomcat
7.查看容器
查询正在运行的容器
docker ps|grep 容器关键词
例: docker ps
docker ps|grep tomcat
查询全部
docker ps -a|grep
例: docker ps -a
docker ps -a|grep tomcat
8.更新容器
docker update 参数 容器id/容器name
例: docker update --restart=always portainer
docker update --restart=no tomcat1
docker update --restart=on-failure tomcat1
docker update --restart=on-failure:5 tomcat1
9.停止容器
docker stop 容器id/容器name
10.停止所有容器
docker stop $(docker ps -aq)
11.启动容器
docker start 容器id/容器name
12.删除容器
docker rm 容器id/容器name
13.删除所有容器
docker rm $(docker ps -aq)
14.进入容器
docker exec -it 容器id|容器名称 /bin/bash
例: docker exec -it tomcat1 /bin/bash
15.退出容器
exit
16.复制文件到容器
docker cp 宿主机目录及文件名 容器名称:容器目录
例:
docker cp /home/yang/tomcat1/demo tomcat1:/usr/local/tomcat/webapps/
注:webapps后面有个/,
17.提交容器生成镜像
docker commit -a "author" -m "message" containerld|containerName imageName:tag
例:
docker commit -a "yang" no1_tomcat_1 tomcat:my
docker commit tomcat1 tomcat:my
18.重启docker服务
systemctl restart docker
19.查看网络
docker network ls
默认有以下三个网络:
在portainer中的Networks中可以查看
20.创建网络
docker network create 网络name
也可以在portainer页面上创建网络:
21.删除网络
docker network rm 网络name/网络Id
22.查看某个网络详情
docker network inspect 网络name/网络Id
例: docker inspect test1
23.在创建容器时指定网络
docker run -d -p 宿主机端口:容器端口 --network 网络名称 --network-alias 容器在网络中的别名 --name 容器名称 镜像名称
例: docker run -d -p 8091:8080 --network test1 --name tomcat91 tomcat:my
docker run -d -p 8092:8080 --network test1 --network-alias t92 --name tomcat92 tomcat:my
注: 下图所圈 为网段内的别名, 可通过访问别名连接计算机的容器