VM虚拟机上使用centos7安装docker启动gogs服务视频教程

BiliBili视频教程链接飞机票,点我

使用VMware Workstation安装Centos7 MinMal系统

第一步:下载安装VMware Workstation

提供一个友情下载链接虚拟机VMware Workstation Pro 12.0.1【PJ版】大家自行安装

下载Centos7 MinMal ISO最小化安装镜像

进入cnetos官方网站下载MinMal ISO系统镜像

第二部:使用VM安装系统,设定管理员账户密码以及普通用户账户,设定网络,安装VMware Tools虚拟机驱动

提供一个友情教程【CentOS】CentOS7的安装,网络的开启和VMware Tools的安装

第三步:使用xshell进行ssh登录验证

下载及使用自行百度软件下载地址

SSH的Host地址在虚拟机centos中使用一下地址进行查看,默认端口22,密码管理员密码

$ ip addr

安装docker

Get Docker CE for CentOS

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

$ sudo yum remove docker \
docker-common \
docker-selinux \
docker-engine

安装Docker CE

你能够通过不同的方式来安装DockerCE,取决于你的需要。

通过仓库来安装docker

当你在一台新的机器上第一次安装docker之前,你需要去设定一下你的Docker仓库,之后你才能够安装或者更新Docker从仓库中

设置仓库:

  1. 安装依赖的库:yum-utils、yum-config-manager、device-mapper-persistent-data、lvm2、devicemapper
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
  1. 使用下列的命令去设置stable仓库,你大部分使用的是stable版本的仓库,不过你想安装编译从edge或者test版本也是没有问题的
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
  1. 选项:允许edge和test的参控股,他们的仓库资源是包含在docker.repo上面的,文件包含,但是默认配置是能够获取的,你需要用通过命令开启,然后能够和stable版本一起使用
$ sudo yum-config-manager --enable docker-ce-edge
$ sudo yum-config-manager --enable docker-ce-test

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

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

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

安装Docker CE

  1. 安装最新版本的Docker CE或者按安装特殊版本
$ sudo yum install docker-ce

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

  1. 在生产系统你需要搞特殊版本的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>
# example
$ sudo yum install docker-ce-17.06.1.ce
  1. 启动Docker
$ sudo systemctl start docker
  1. 验证docker是不是被正确的安装,通过hello-world的镜像
$ sudo docker run hello-world
  1. 卸载docker
  • 第一步:卸载docker包
$ sudo yum remove docker-ce
  • 第二步:删除你的镜像、容器、磁盘、以及相关的配置文件在你电脑上不会自动删除,通过命令行删除的镜像、容器、文件
$ sudo rm -rf /var/lib/docker
  1. windows和mac安装,官网下载,安装包的方式安装,安装完成后即可使用
  1. 官方还提供了其他方式进行安装,各位参考官方网站

注意点:windows使用的hype-V技术,和VMware Workstation使用的虚拟化技术有冲突,两者不能同时启动,用windows的同学注意咯

添加docker镜像节点

DaoCloud:Docker加速器,注册账号,按照使用教程进行处理

Docker 加速器是否收费?

DaoCloud 为了降低国内用户使用 Docker 的门槛,提供永久免费的加速器服务,请放心使用。

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

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

我们使用docker安装的方式Ship with DockerDocker for Gogs

  1. 拉取镜像
# 拉取gogs镜像到本地docker中,确保docker启动中
$ docker pull gogs/gogs
# 查看镜像
$ docker images
# docker使用帮助
$ docker --help
  1. 配置目录启动镜像设定参数
# 下载镜像
$ 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
  1. 启动参数含义解析

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

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

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

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

  1. 停止后重新启动服务
# 启动gogs
$ docker start gogs
# 停止gogs
$ docker stop gogs
  1. 访问gogs配置使用,具体按照系统操作

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

# 添加防火墙端口通过
$ firewall-cmd --zone=public --add-port=3000/tcp --permanent
# 刷新防火墙
$ firewall-cmd --reload

参考资料

微信公众号:努力编程的小猪

欢迎大家关注,我也希望能够认识更多的人!

【运维技术】VM虚拟机上使用centos7安装docker启动gogs服务教程【含B站视频教程】的更多相关文章

  1. [运维] 如何访问虚拟机上的 Tomcat ?

    环境: 虚拟机: VMware 15 pro    操作系统  Linux  CentOS 7 64 物理机: Windows 7 事先准备: 1: 下载 Tomcat  的压缩包  apache-t ...

  2. 基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台

    Docker技术几年前就火了,伴随着今年来devops的流行,这项技术一直被技术社区追捧.提起Docker很容易被默认为是Linux平台下的技术,.NET的技术跟他似乎没有沾边,不过那是对非.NET ...

  3. Centos7使用Docker启动elasticsearch服务秒退

    首先查看docker启动日志 docker logs -f 容器id 查看报错信息 OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepG ...

  4. CentOS7安装docker 启动不了解决篇

    [root@test ~]# yum update [root@test ~]# yum install docker [root@test ~]# service docker start Redi ...

  5. 解决本地无法访问vm虚拟机上centos7服务器中已配置好的hugo站点的问题

    一.配置VM网络连接 打开vm,找到"编辑",打开"虚拟网络编辑器" 选中下面截图中的上方为类型为"NAT模式"那一栏,然后点击下方的&qu ...

  6. vm虚拟机上安装apache+php+ftp+mysql

    我在vm虚拟机上想安装 winxp和linux,然后在linux机上装apache+php+ftp+mysql,以下为我的按装过程:  1:连通虚拟机:两个虚拟机都选Host-Onl,查看主机Virt ...

  7. 突破LVS瓶颈,LVS Cluster部署(OSPF + LVS) - lxcong的运维技术 - 开源中国社区

    突破LVS瓶颈,LVS Cluster部署(OSPF + LVS) - lxcong的运维技术 - 开源中国社区 突破LVS瓶颈,LVS Cluster部署(OSPF + LVS)

  8. 端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区

    端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区 端口映射工具 redir/socat/xinetd    10人收藏此文章, 我要收藏 发表于3天前(2013-08 ...

  9. 干货云集 WOT 2017全球架构与运维技术峰会揭密技术难点

    WOT,World Of Tech专注互联网IT技术领域,是一场不容错过的技术盛会!WOT 2017全球架构与运维技术峰会三大章节,15大技术专场,60+国内外一线互联网精英大咖站台,打造兼顾技术视野 ...

随机推荐

  1. 第一篇:《UNIX 网络编程 第二版》编译环境的搭建

    第一步:搭建基本的编译环境 安装gcc, g++, bulid-essential等编译软件 第二步:下载本书示例源码包 第三步:解压下载到的包并放在用户主目录中 第四步:进入包内并执行以下命令 su ...

  2. surfaceView和View的区别

    概念:view在UI线程去更新自己:而SurfaceView则在一个子线程中去更新自己 surfaceView是在一个新起的单独线程中可以重新绘制画面,而View必须在UI的主线程中更新画面 在UI的 ...

  3. ARM漏洞

    Google安全团队Project Zero公布了多个高危漏洞,称这些漏洞几乎影响到了市面上所有的微处理器,AMD.ARM还是英特尔的处理器都难以幸免,围绕这些处理器打造的操作系统和硬件设备也会受到影 ...

  4. lua中类的实现原理和实践

    一.基础概念  Lua 本身是函数式的语言,但借助 metatable (元表)这个强大的工具,Lua 实现操作符重载易如反掌.. 下文将详细的解释在Lua中实现类的原理,涉及到的细节点将拆分出来讲, ...

  5. 【linux系列】安装虚拟机时候的3中网络模式

    一.桥接 桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台实现网络中 ...

  6. python的三个函数(eval、exec、complie)和python版RMI

    一.python的三个函数: 1.eval函数: 之前已经讲过了这个函数,该函数也类似于php的eval,例如下边这个例子 eval("os.system('id')") 但是有个 ...

  7. net 中的一些知识

    这是一篇摘抄的文章 有一些内容对我很有帮助 .有一些内容解释很清晰 所以我拿过来了. 第一遍用了5天时间,第二遍看的时候决定自己复制一份出来于是有了这儿博客. 什么是.NET?什么是.NET Fram ...

  8. MYSQL创建数据表!

    几个常见的建表原则: a,表都加前缀b,所有的字段选择最小的数据类型,如id可以使用mediumint比INT节省25%的空间c,尽量所有的字段都设置为NOT NULL的,这样能让速度更快d,为合适的 ...

  9. 最优比例生成环(dfs判正环或spfa判负环)

    http://poj.org/problem?id=3621 Sightseeing Cows Time Limit: 1000MS   Memory Limit: 65536K Total Subm ...

  10. MySQL集群简介与配置详解

    1. 先了解一下你是否应该用MySQL集群. 减少数据中心结点压力和大数据量处理,采用把MySQL分布,一个或多个application对应一个MySQL数据库.把几个MySQL数据库公用的数据做出共 ...