docker和docker-compose 常用命令docker 常用命令
docker和docker-compose 常用命令docker 常用命令
docker的安装
安装储存设备映射包
yum install -y yum-utils device-mapper-persistent-data lvm2
添加docker软件镜像
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装dockerCE
yum install -y docker-ce
启动docker
systemctl start docker
自动启动docker
systemctl enable docker
清除docker镜像缓存 该命令清除:所有停止的容器
所有不被任何一个容器使用的网络
所有不被任何一个容器使用的volume
所有无实例的镜像
docker system prune --volumes
批量删除镜像的两种方式
//docker 删除none镜像
docker images | grep none | awk '{print $3}' | xargs docker rmi
批量删除镜像
docker rmi $(docker images |grep backstageui |awk '{print $3}')
docker 复制
docker 容器中与宿主机时间同步以及设置时区并重启(设置项目和mysql)
docker cp /usr/share/zoneinfo/Asia/Shanghai hidden:/etc/localtime
docker cp :用于容器与主机之间的数据拷贝。
1、从主机往容器中journal
eg:将主机/root/runoob目录拷贝到容器96f7f14e99ab的/root目录下。
docker cp /root/runoob 96f7f14e99ab:/root/
2、将容器中文件拷往主机
eg:将容器96f7f14e99ab的/root目录拷贝到主机的/tmp目录中。
docker cp 96f7f14e99ab:/root /tmp/
检查时间是否一致docker exec -it CONTAINER ID date
搭建私有仓库
docker pull registry
docker run --detach --publish 5000:5000 --name registry-container --restart=always --hostname registry registry
或者
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry
注释 -v 指定数据持久化 --restart 代表当容器宕机后不断重启,保证服务不中段
cat /etc/docker/daemon.json
{
"registry-mirror": [
"https://registry.docker-cn.com"
],
"insecure-registries": [
"192.168.111.11:5000"
]
}
systemctl restart docker
portainer dockerui的管理界面
docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer-test portainer/portainer
汉化的需要下载文件
https://dl.quchao.net/Soft/Portainer-CN.zip
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data -v /root/public:/public portainer/portainer
参数说明:
-d:容器在后台运行;
-p 9000:9000 :宿主机9000端口映射容器中的9000端口
–restart 标志会检查容器的退出代码,并据此来决定是否要重启容器,默认是不会重启。
–restart=always:自动重启该容器
-v /var/run/docker.sock:/var/run/docker.sock :把宿主机的Docker守护进程(Docker daemon)默认监听的Unix域套接字挂载到容器中
-v portainer_data:/data 把宿主机portainer_data数据卷挂载到容器/data目录-v /public:/public:把宿主机汉化包挂载到容器内
–name prtainer : 给容器起名为portainer
查看私有仓库的镜像
curl -XGET http://192.168.111.60:5000/v2/_catalog
docker-compose 常用
curl -L https://github.com/docker/compose/releases/download/1.26.0/docker-compose-Linux-x86_64 -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose
docker-compose --version
--insecure-registry=http://192.168.111.60
docker-compose -h # 查看帮助
docker-compose up # 创建并运行所有容器
docker-compose up -d # 创建并后台运行所有容器
docker-compose -f docker-compose.yml up -d # 指定模板
docker-compose down # 停止并删除容器、网络、卷、镜像。
docker-compose logs # 查看容器输出日志
docker-compose pull # 拉取依赖镜像
dokcer-compose config # 检查配置
dokcer-compose config -q # 检查配置,有问题才有输出
docker-compose restart # 重启服务
docker-compose start # 启动服务
docker-compose stop # 停止服务
docker-compose unpause [SERVICE...]恢复处于暂停状态中的服务。
docker-compose up --no-recreate这样将只会启动处于停止状态的容器,而忽略已经运行的服务。
docker-compose up --no-deps -d <SERVICE_NAME> 来重新创建服务并后台停止旧服务,启动新服务,并不会影响到其所依赖的服务。
*
-d 在后台运行服务容器。
*
--no-color 不使用颜色来区分不同的服务的控制台输出。
*
--no-deps 不启动服务所链接的容器。
*
--force-recreate 强制重新创建容器,不能与--no-recreate同时使用。 --no-recreate如果容器已经存在了,则不重新创建,不能与 --force-recreate同时使用。 --no-build不自动构建缺失的服务镜像。
*
-t, --timeout TIMEOUT 停止容器时候的超时(默认为 10 秒)。
docker-compose build
1、不自定义镜像名称
version: "3.9"services:
webapp:
build:
context: ./dir
dockerfile: Dockerfile
args:
buildno: 1
2、自定义镜像名称
version: "3.9"
services:
webapp:
build: ./dir
image: webapp:tag
问题1
unknown flag: --iidfile
docker-compose的版本太高 降低版本就好了
更多推荐
所有评论(0)