Docker在默认安装之后,通过命令docker pull 拉取镜像时,默认访问docker hub上的镜像,在国内网络环境下,下载时间较久,所以要配置国内镜像仓库。
修改方式如下:
第一步:新建或编辑daemon.json
vi /etc/docker/daemon.json
第二步:daemon.json中编辑如下
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
第三步:重启docker
systemctl restart docker.service
第四步:执行docker info查看是否修改成功
docker info
1.网易
http://hub-mirror.c.163.com
2.Docker中国区官方镜像
https://registry.docker-cn.com
3.中国科技大学
https://docker.mirrors.ustc.edu.cn
4.阿里云容器 服务
https://cr.console.aliyun.com/
首页点击“创建我的容器镜像” 得到一个专属的镜像加速地址,类似于“https://1234abcd.mirror.aliyuncs.com”
1.配置国内镜像源
Docker在默认安装之后,通过命令docker pull 拉取镜像时,默认访问docker hub上的镜像,在国内网络环境下,下载时间较久,所以要配置国内镜像仓库。
修改方式如下:
-
-
vi /etc/docker/daemon.json
-
-
-
-
"registry-mirrors": ["http://hub-mirror.c.163.com"]
-
-
-
-
systemctl restart docker.service
-
-
第四步:执行docker info查看是否修改成功
-
国内的加速地址如下:
-
-
-
-
-
-
-
-
-
首页点击“创建我的容器镜像” 得到一个专属的镜像加速地址,类似于“https:
2.常用命令
2.1帮助命令
- docker version:显示Docker的版本信息;
- docker info:显示Docker系统信息,包括镜像和容器数;
- docker --help:帮助命令
2.2镜像命令
2.2.1本地镜像管理
-
-
-
-
-
docker rmi [参数] [镜像名或镜像名列表]
-
-
-
-
docker rmi -f tomcat hello-world(删除tomcat和hello-world,不带TAG默认为latest)
-
docker rmi -f $(docker images -qa) 删除所有镜像
2.2.2远程仓库
- docker search:从Docker Hub查找镜像
-
-
-
-
--automated:只列出automated build类型的镜像。
-
-
docker search -s 10 nginx
- docker pull:从镜像仓库拉取或更新指定镜像
-
docker pull [参数] 镜像名[:TAG]
-
-
-
-
-
docker pull -a nginx (从Docker Hub下载REPOSITORY为nginx的所有镜像)
将本地镜像上传到阿里云为例。
-
-
-
2.命令行登录到阿里云的doker仓库,--username为阿里云的用户名
-
docker login --username=houpengkun registry.cn-hangzhou.aliyuncs.com
-
-
-
docker tag f4ec85e8298f registry.cn-hangzhou.aliyuncs.com/houpk/mynginx:0.1
-
-
-
docker push registry.cn-hangzhou.aliyuncs.com/houpk/mynginx:0.1
-
-
5.登录阿里云查看已上传的镜像列表:https://cr.console.aliyun.com/#/imageList
2.2.3容器操作命令
-
-
-
-
- docker run :创建一个新的容器并运行一个命令
-
docker run [参数] 镜像名/ID [命令] [命令参数...]
-
-
-i:以交互模式运行容器,通常与 -t 同时使用;
-
-
-
-p:指定端口映射,格式为:主机(宿主)端口:容器端口;
-
-P:随机端口映射,容器内部端口随机映射到主机的高端口;
-
-
-
docker run -it nginx:latest /bin/bash
-
docker run -p 8080:8080 tomcat
-
-
-
-
- docker start/stop/restart
-
docker start 容器ID [容器ID...] : 启动容器
-
docker stop 容器ID [容器ID...] : 停止容器
-
docker restart 容器ID [容器ID...] : 重启容器
-
以上操作都要建立在容器已经创建的基础上,也就是执行了docker run命令
-
docker exec [参数] 容器id 命令 [命令参数...]
-
-
-
-
-
-
docker exec -it mynginx /bin/bash
-
docker kill [参数] 容器 [容器...]
-
-
-
-
docker kill -s KILL mynginx
-
docker rm [参数] 容器 [容器...]
-
-
-
-
-
docker rm $(docker ps -aq)
-
-
-
-
-
-
-
-
-
查看容器mynginx从2016年7月1日后的最新10条日志
-
docker logs --since="2016-07-01" --tail=10 mynginx
-
-
-
- docker cp :用于容器与主机之间的数据拷贝
-
-
-
-
-
-
-
-
将主机/usr/abc目录拷贝到容器96f7f14e99ab的/hou目录下
-
docker cp /usr/abc 96f7f14e99ab:/hou/
-
-
将主机/usr/abc目录拷贝到容器96f7f14e99ab中,重命名为hou
-
docker cp /usr/abc 96f7f14e99ab:/hou
-
-
将容器96f7f14e99ab的/abc目录拷贝到主机的/tmp目录中
-
docker cp 96f7f14e99ab:/abc /tmp/
-
- docker commit :从容器创建一个新的镜像
-
docker commit [参数] 容器 [镜像[:TAG]]
-
-
-
-
-
-
docker commit -a "houpk" -m "create mynginx" a404c6c174a2 mynginx:v1
-
运行docker images可以查看创建的镜像。