Docker容器历练之路-常用命令编

docker常用命令

开启docker服务

systemctl start docker

关闭docker服务

service docker stop  
或者 
systemctl stop docker

重启docker服务

systemctl restart docker

开启docker容器(docker exit状态)

docker start 容器名称  
比如开启名字为cli容器: docker start cli

启动一个docker容器终端(docker up状态)

即进入运行中的docker容器,可以进行一些操作,如登陆Linux一样。

docker exec -it  容器名称 bash 
比如名字为cli容器: docker exec -it  cli bash 

重启docker容器(docker up状态)

docker restart 容器名称  
比如重启名字为cli容器: docker restart cli

复制文件到docker容器中

docker cp 主机文件  容器名称:容器路径
比如将home目录下的test文件放到cli容器的src目录下: 
docker cp '/home/test' cli:/opt/gopath/src

查看镜像

docker images

删除某一个容器

docker rm <容器ID>

删除某一个镜像

docker rmi <image id>

删除所有停止的镜像

docker rm $(docker ps -aq)

查看docker镜像日志

docker logs 镜像名称

删除容器失败时候调用

docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop

docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm

docker images|grep none|awk '{print $3 }'|xargs docker rmi

docker镜像导出

tar镜像包可以拷贝到其他机器docker环境中加载

docker save 容器名称-o 导出的容器包名称.tar
如将容器hello打包为hello.tar
 docker save hello -o hello.tar

docker镜像加载

docker load -i hello.tar

docker 查询过滤

docker ps -a | grep 要查看的

docker 推送和拉取镜像

推送到私服:

docker push 172.XX.209.XX:8083/jenkins/jenkins:20200202

从私服拉取:

#先登录:
docker login 172.XX.209.XX:8082 -u admin -p 密码
#拉取
docker pull 172.XX.209.XX:8082/jenkins/jenkins:20200202

依据容器创建新镜像

使用commit存为新的镜像

docker commit 69f501e858a6 jenkins-bak:1.0

docker一键删除所有none镜像

docker rmi `docker images | grep  "<none>" | awk '{print $3}'`

修改docker容器的时间、时区

进入宿主机查看容器 docker ps

#进入容器 
docker exec -it “容器名“ bash
#查询时间 date -R 发现时区为0时区
date -R
#Tue, 17 Sep 2019 05:51:30 +0000

1.复制相应的时区文件,替换系统时区文件;

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo  'Asia/Shanghai' > /etc/timezone

有的容器基础镜像是有这个文件的,直接拷贝就可以,如果不能拷贝,则是因为创建镜像时依赖的基础镜像 运行的容器没有这两个文件,使用下面的办法

  1. 创建文件夹
mkdir -p /usr/share/zoneinfo/Asia

3.回到宿主机,复制宿主机里的文件到容器中

docker cp /usr/share/zoneinfo/Asia/Shanghai 容器ID或容器名:/usr/share/zoneinfo/Asia
  1. 进入容器
docker exec -it 容器Id或容器名 bash

执行命令

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo  'Asia/Shanghai' > /etc/timezone
  1. 验证date
date
#Tue Sep 17 13:54:25 CST 2019
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值