docker搭建及使用、常用问题总结

前言

安装资料

参考资料:Docker 教程
参考资料:Centos7下安装Docker
参考资料:Docker 国内仓库和镜像

镜像加速

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是网易的镜像地址:http://hub-mirror.c.163.com
新版的 Docker 使用 /etc/docker/daemon.json(Linux) 或者 %programdata%\docker\config\daemon.json(Windows) 来配置 Daemon。
请在该配置文件中加入(没有该文件的话,请先建一个):

{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

但是我选择的是
DaoCloud – 企业级云计算领域的创新领导者

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

该脚本可以将 --registry-mirror 加入到你的 Docker 配置文件 /etc/docker/daemon.json 中。
适用于 Ubuntu14.04、Debian、CentOS6 、CentOS7、Fedora、Arch Linux、openSUSE Leap 42.1,
其他版本可能有细微不同。更多详情请访问文档。
最后重启下docker就OK了,重启命令:systemctl restart docker

【docker】离线环境导入镜像

首先,需求是在一个无外网环境中导入 docker images,
一个可行的方法是将可用的镜像打包成 tar 包,然后传输到需要的地方,
再重新将 tar 包导入到 docker 中。
镜像转文件的命令是: docker save image > /root/image.tar
文件转镜像的命令是: docker load < /root/image.tar 或者 docker load -i /root/image.tar

坑 1 是:  requested load from stdin, but stdin is empty
结论 : docker load 的时候, < 误写成 >, 会出现这个错误,
并且原 tar 包会被修改,修改后就不可用了
坑 2 是: open /var/lib/docker/tmp/docker-import-054903443/repositories: no such file or directory
结论 : 如果你使用过坑 1 中的命令,那么即使你之后的命令都是正确的,
你也会遇到上述错误,避免的办法是不要输错命令。
倘若你已经输错了,那么唯一可用的方法是删除当前的 tar 包,
并且重新获取 tar 包,如果不是就地编译的 tar 包,
而是其他地方复制过来的,那么原 tar 包还是可用的。

常用命令

启动 Docker 后台服务
systemctl start docker
查看当前正在运行的容器
docker ps
查看所有容器的状态
docker ps -a
启动/停止某个容器(该容器已经存在)
docker start/stop id/name
进入某个容器(使用exit退出后容器也跟着停止运行)
docker attach id
启动一个伪终端以交互式的方式进入某个容器(使用exit退出后容器不停止运行)
docker exec -ti id
docker exec -it 942c2253509c /bin/bash
查看本地镜像
docker images
删除某个容器
docker rm id/name
删除某个镜像
docker rmi id/name
复制ubuntu容器并且重命名为test且运行,然后以伪终端交互式方式进入容器,运行bash
docker run --name test -ti ubuntu /bin/bash
通过当前目录下的Dockerfile创建一个名为soar/centos:7.1的镜像
docker build -t soar/centos:7.1
以镜像soar/centos:7.1创建名为test的容器,并以后台模式运行,并做端口映射到宿主机2222端口,P参数重启容器宿主机端口会发生改变
docker run -d -p 2222:22 --name test soar/centos:7.1
看下本机正在运⾏的容器
docker container ls -all
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值