由于Docker限制分为两个版本CE和EE,所以之前yum里面的docker是老版本,需要先进行卸载,现在的包名叫做docker-ce

yum remove docker docker-common docker-selinux docker-engine

安装Docker CE
你能够通过不同的方式来安装DockerCE,取决于你的需要。
通过仓库来安装docker
当你在一台新的机器上第一次安装docker之前,你需要去设定一下你的Docker仓库,之后你才能够安装或者更新Docker从仓库中

设置仓库:

1、安装依赖的库:

yum install -y  yum-utils device-mapper-persistent-data lvm2

 

2、使用下列的命令去设置stable仓库,你大部分使用的是stable版本的仓库,不过你想安装编译从edge或者test版本也是没有问题的

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

 

3选项:允许edge和test的参控股,他们的仓库资源是包含在docker.repo上面的,文件包含,但是默认配置是能够获取的,你需要用通过命令开启,然后能够和stable版本一起使用

yum-config-manager --enable docker-ce-edge

yum-config-manager --enable docker-ce-test

也能够通过yum-config-manager的命令--disable来开启和关闭对应的edge仓库和test仓库

yum-config-manager --disable docker-ce-edge

备注:从Docker17.06开始,stable releases版本同样会被推送到edge和test的仓库中

 

安装Docker CE

1、安装最新版本的Docker CE或者按安装特殊版本

yum install docker-ce

警告:如果你有移除Docker,安装或者更新特殊版本在yum install或者yum update命令,仍然会安装最高可用版本的docker,有可能你获取不到适当的版本

2、在生产系统你需要搞特殊版本的docker而不是最新版,列表可以查看的版本,使用sort -r命令获得版本结果你需要加入对应的版本号.x86_64在包名的后面

yum list docker-ce.x86_64  --showduplicates | sort -r docker-ce.x86_64            17.06.ce-1.el7.centos             docker-ce-stable

安装对应的版本如上图版本就是docker-ce-17.06.ce-1

sudo yum install <FULLY-QUALIFIED-PACKAGE-NAME>     //依情况而定

sudo yum install docker-ce-17.06.1.ce      //家里安的是这个

 

3、启动Docker

systemctl start docker

4、验证docker是不是被正确的安装,通过hello-world的镜像

docker run hello-world

 

5、卸载docker

yum remove docker-ce

6、第二步:删除你的镜像、容器、磁盘、以及相关的配置文件在你电脑上不会自动删除,通过命令行删除的镜像、容器、文件

rm -rf /var/lib/docker

 

添加docker镜像节点

DaoCloudDocker加速器,注册账号,按照使用教程进行处理
Docker 加速器是否收费?
DaoCloud 为了降低国内用户使用 Docker 的门槛,提供永久免费的加速器服务,请放心使用。

使用docker下载gogs镜像,并进行部署安装

进入gogsgithub查找对应的教程,本次部署使用docker的模式,所以我们找寻docker方法,实际上部署还有Install from binaryInstall from sourceInstall from packagesInstall with Vagrant等方式。
我们使用docker安装的方式Ship with DockerDocker for Gogs

拉取镜像

# 拉取gogs镜像到本地docker中,确保docker启动中

$ docker pull gogs/gogs# 查看镜像

$ docker images# docker使用帮助

$ docker --help

配置目录启动镜像设定参数

# 下载镜像

$ docker pull gogs/gogs

# 创建本地磁盘

$ mkdir -p /var/gogs

# 启动gogs

$ docker run --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs

启动参数含义解析

 

--name:指定启动的容器的名称为gogs

 

-p:指定端口映射,一个是对外主机端口,映射到docker里面的22端口,同理10080映射到3000的端口,个人觉得如果端口不是不够的情况下,指定相同的端口便于记忆

-v:指定数据磁盘,指定/var/gogs:作为/data的路径

gogs/gogs:镜像的名称,也就是docker的gogs镜像

停止后重新启动服务

# 启动gogs

$ docker start gogs

# 停止gogs

$ docker stop gogs

访问gogs配置使用,具体按照系统操作

添加linux服务器防火墙端口过滤命令,按照指定端口进行配置

# 添加防火墙端口通过

$ firewall-cmd --zone=public --add-port=3000/tcp --permanent

# 刷新防火墙

$ firewall-cmd --reload