Docker镜像加速(国内镜像站)
阿里云Docker CE 镜像
简介
Docker CE 是免费的 Docker 产品的新名称,Docker CE 包含了完整的 Docker 平台,非常适合开发人员和运维团队构建容器 APP。
配置方法
Ubuntu 14.04/16.04(使用 apt-get 进行安装)
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
# docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]
CentOS 7(使用 yum 进行安装)
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start
# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ee.repo
# 将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
安装校验
root@iZbp12adskpuoxodbkqzjfZ:$ docker version
Client:
Version: 17.03.0-ce
API version: 1.26
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Server:
Version: 17.03.0-ce
API version: 1.26 (minimum version 1.12)
Go version: go1.7.5
Git commit: 3a232c8
Built: Tue Feb 28 07:52:04 2017
OS/Arch: linux/amd64
Experimental: false
一把梭就可以了,基本适应主流Linux: curl -skSL https://mirror.azure.cn/repo/install-docker-ce.sh | sh -s — —mirror Aliyun
镜像操作
docker search mysql -s 100
docker pull mysql
docker images
docker ps
docker run -t 0i centos /bin/bash
创建镜像
修改已有镜像
docker pull training/sinatra # 下载镜像
docker run -t -i training/sinatra /bin/bash #启动bash终端
gem install json # 容器命令行安装json,模拟容器增加组件
exit # 退出容器
docker commit -m 'add json gem' -a 'Docker Container' image_id image_name # 提交镜像
docker images # 查看镜像
docker run -t -i image_name /bin/bash # 使用自定义容器启动新的容器
使用DockerFile创建镜像
root@jk-lx-dev-app01 centos]# cat Dockerfile
#注释
FROM centos
MAINTAINER REGAN zz203203zhang@gmail.com
RUN yum -qqy install python
[root@jk-lx-dev-app01 centos]# docker build -t='my/centos_with_wget:v1.0.1' .
Sending build context to Docker daemon 2.048kB
Step 1/3 : FROM centos
---> 470671670cac
Step 2/3 : MAINTAINER REGAN zz203203zhang@gmail.com
---> Using cache
---> 8b8e4b9c1098
Step 3/3 : RUN yum -qqy install wget
---> Running in 90c01efd9445
Removing intermediate container 90c01efd9445
---> e769d9517a0d
Successfully built e769d9517a0d
Successfully tagged my/centos_with_wget:v1.0.1
[root@jk-lx-dev-app01 centos]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
my/centos_with_wget v1.0.1 e769d9517a0d 17 seconds ago 272MB
addjsontraining/sinatra v1.0.0 d802e17113f6 8 minutes ago 453MB
centos latest 470671670cac 2 weeks ago 237MB
training/sinatra latest 49d952a36c58 5 years ago 447MB
[root@jk-lx-dev-app01 centos]# docker run -t -i training/sinatra /bin/bash
root@bf594694ffc7:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
root@bf594694ffc7:/# exit
# 修改dockerimages标签
[root@jk-lx-dev-app01 centos]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
my/centos_with_wget v1.0.1 e769d9517a0d 5 minutes ago 272MB
addjsontraining/sinatra v1.0.0 d802e17113f6 13 minutes ago 453MB
centos latest 470671670cac 2 weeks ago 237MB
training/sinatra latest 49d952a36c58 5 years ago 447MB
[root@jk-lx-dev-app01 centos]# docker tag e769d9517a0d my/centos_gwet:v1.0.1
[root@jk-lx-dev-app01 centos]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
my/centos_with_wget v1.0.1 e769d9517a0d 5 minutes ago 272MB
my/centos_gwet v1.0.1 e769d9517a0d 5 minutes ago 272MB
addjsontraining/sinatra v1.0.0 d802e17113f6 14 minutes ago 453MB
centos latest 470671670cac 2 weeks ago 237MB
training/sinatra latest 49d952a36c58 5 years ago 447MB
本地导入镜像
cat xxx.tar.gz | docker import - my/xxx:v1.0.1
docker push xxx # 上传镜像到共享仓库
保存、载入、删除
docker save -0 xxx.tar.gz image_name # 保存本地镜像
docker load --input xxx.tar.gz # 导入写法1
docker load < xxx.tar.gz # 导入写法2
docker rmi image_id # 删除镜像,有依赖不会被删除
docker rmi -f image_id # 强制删除,包含依赖