Docker命令
配置阿里云镜像加速器(大幅度提升下载镜像速度)
1、sudo mkdir -p /etc/docker
2、sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://fwgkpvp6.mirror.aliyuncs.com"]
}
EOF
3、sudo systemctl daemon-reload
4、sudo systemctl restart docker
删除镜像
docker rmi -f 镜像name
删除所有的容器 (使用参数需要指定启动方式为 /bin/sh)
docker rm -f $(docker ps -aq)
docker元数据
docker inspect NAME|ID
进入容器
docker exec -it ID /bin/bash (开启一个新的终端)
docker attach ID (进入当前运行的终端)
安装最新版nginx
docker pull nginx
启动nginx
docker run -d --name nginx01 -p 8123:80 nginx
测试连接
curl localhost:8123 (阿里云安全组开通8123端口后,公网也可以访问)
进入容器
docker exec -it nginx01 /bin/bash
安装tomcat 9
docker pull tomcat:9.0
后台运行tomcat,并重命名为tomcat1
docker run -d -p 8234:8080 --name tomcat1 tomcat:9.0
curl localhost:8234 发现404
进入tomcat
docker exec -it tomcat1 /bin/bash
发现webapps下没有内容,把webapps.dist下面的文件全部复制到webapps ,刷新页面就可以出来tomcat启动页面 (ps:我这里最后使用 rm -rf *把复制的内容又删除了,只是为了测试删除功能而已。)
安装使用portainer
docker volume create portainer_data
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
cd /usr/libexec/docker/
sudo ln -s docker-runc-current docker-runc
commit命令
docker commit -a = "author" -m = "message" ID reName
docker commit -a="zhu" -m="add webapps application" 2a8ae9b65564 tomcat2:1.0
使用卷加载
docker run -it -v 主机目录:dokcer容器目录 容器名称
docker run -it -v /home/ceshi:/home centos
通过命令 docker inspect ID 可以查看卷挂载情况
DockerFile创建镜像
cd /home 进入home目录
mkdir docker-test-volume 创建存放dockerFile的文件夹
cd docker-test-volume
vim dockerfile1 创建一个名为dockerfile1的文件,内容如下
FROM centos
VOLUME ["volume01","volume02"]
CMD /bin/bash
bulid镜像
-f dockerfile文件路径
-t 生成目标文件名称
docker build -f dockerfile1 -t mycentos:1.0 .
通过 docker inspect 容器id 可以查看卷挂载情况!
数据卷共享
docker run -it --name mycentos01 29ba3d6d7a91
docker run -it --name mycentos02 --volumes-from mycentos01 29ba3d6d7a91
docker run -it --name mycentos03 --volumes-from mycentos01 29ba3d6d7a91
可以看到在mycentos01的volume01文件夹中创建的文件共享给了mycentos02
注:当删除了mycentos01之后,mycentos02和mycentos03中的数据并不会丢失。