全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

部署维护docker环境的详细教程

1,安装环境说明

系统环境:centos6.6

服务应用了:  haproxy  confd   etcd   docker

主机名               ip      服务角色

dockerha-152      192.168.36.152    haproxy confd

dockerEtcd-153     192.168.36.153      etcd

dockermain-154    192.168.36.154    docker

2,安装依懒包,关闭冲突的服务

官方文档要求Linux kernel至少3.8以上,且docker只能运行在64位的系统中。由于RHEL6和CentOS6的内核版本为2.6,因此必须要先升级内核。

cd /etc/yum.repos.d 
wget http://www.hop5.in/yum/el6/hop5.repo
yum install kernel-ml-aufs kernel-ml-aufs-devel -y

修改grub的主配置文件/etc/grub.conf,设置default=0,表示第一个title下的内容为默认启动的kernel(一般新安装的内核在第一个位置)。

然后重启,重启系统,这时候你的内核就成功升级了,版本应该在3.8以上了,

uname -r 
[root@dockermain-154 shell]# uname -r

3.10.5-3.el6.x86_64

sed -i '/^SELINUX=/c\SELINUX=disabled' /etc/selinux/config
setenforce 0

在Fedora EPEL源中已经提供了docker-io包,下载安装epel:

rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm 
sed -i 's/^mirrorlist=https/mirrorlist=http/' /etc/yum.repos.d/epel.repo

3,安装组件

(1)haproxy confd

dockerha-152上操作

1、haproxy 

# yum –y install haproxy 

2、confd 

# wget https://github.com/kelseyhightower/confd/releases/download/v0.6.3/confd-0.6.3-linux-amd64 
# mv confd /usr/local/bin/confd 
# chmod +x /usr/local/bin/confd 
# /usr/local/bin/confd -version 

(2)etcd

dockerEtcd-153上操作

# mkdir -p /home/install && cd /home/install 
# wget https://github.com/coreos/etcd/releases/download/v0.4.6/etcd-v0.4.6-linux-amd64.tar.gz 
# tar -zxvf etcd-v0.4.6-linux-amd64.tar.gz 
# cd etcd-v0.4.6-linux-amd64 
# cp etcd* /bin/ 
# /bin/etcd -version 
etcd version 0.4.6 

(3)Docker

# yum -y install docker-io 
# service docker start 
# chkconfig docker on 

4,docker命令使用

(1)查看帮助

docker COMMAND --help

(2)搜索可用的境像

docker search name 如示例:

[root@dockermain-154 src]# docker search centos
NAME        DESCRIPTION          STARS  OFFICIAL AUTOMATED
centos        The official build of CentOS.     817  [OK]  
ansible/centos7-ansible    Ansible on Centos7        30     [OK]
tutum/centos      Centos image with SSH access. For the root... 13     [OK]
jdeathe/centos-ssh-apache-php  CentOS-6 6.5 x86_64 / Apache / PHP / PHP m... 8     [OK]
blalor/centos      Bare-bones base CentOS 6.5 image    8     [OK]
jprjr/centos-php-fpm                6     [OK]
steeef/graphite-centos    CentOS 6.x with Graphite and Carbon via ng... 6     [OK]
tutum/centos-6.4     DEPRECATED. Use tutum/centos:6.4 instead. ... 5     [OK]
layerworx/centos     A general CentOS 6 image with the EPEL6 an... 2     [OK]
jr42/chef-solo-centos    Official CentOS base images with current c... 1     [OK]
million12/centos-supervisor   Base CentOS-7 with supervisord launcher, h... 1     [OK]
internavenue/centos-percona   Centos-based Percona image.      1     [OK]
jdeathe/centos-ssh     CentOS-6 6.5 x86_64 / EPEL Repo. / OpenSSH... 1     [OK]
jdeathe/centos-ssh-mysql   CentOS-6 6.5 x86_64 / MySQL. Image include... 1     [OK]
yajo/centos-epel     CentOS with EPEL and fully updated    1     [OK]
nimmis/java-centos     This is docker images of CentOS 7 with dif... 0     [OK]
lighthopper/orientdb-centos   A Dockerfile for creating an OrientDB imag... 0     [OK]
bbrietzke/centos-starter   CentOS 7 with EPEL and SupervisorD    0     [OK]
tcnksm/centos-node     Dockerfile for CentOS packaging node   0     [OK]
insaneworks/centos     CentOS 6.5 x86_64 + @update      0     [OK]
snowyday/centos      Provide for emacs and Ricty font on X11 en... 0     [OK]
dmglab/centos      CentOS with superpowers!      0     [OK]
akroh/centos      Centos 6 container that has been updated w... 0     [OK]
timhughes/centos     Centos with systemd installed and running  0     [OK]
solict/provisionous-puppet-centos CentOS provisions with Puppet included   0     [OK]

(3)下载镜像

注意镜像名称要写全,就是用docker search name 搜出来的NAME列的名称。

docker pull name 如示例:

[root@dockermain-154 src]# docker pull jdeathe/centos-ssh-apache-php
Pulling repository jdeathe/centos-ssh-apache-php
........
62203f428b1f: Download complete 
e1812755a4ca: Download complete 
0910edda3736: Download complete 
Status: Downloaded newer image for jdeathe/centos-ssh-apache-php:latest

(4)查看已安装的镜像

[root@dockermain-154 src]# docker images
REPOSITORY      TAG     IMAGE ID   CREATED    VIRTUAL SIZE
centos       latest    dade6cb4530a  10 days ago   210.1 MB
jdeathe/centos-ssh-apache-php latest    f1a489312a4a  3 months ago  297.7 MB

(5)docker容器中运行命令

docker run命令有两个参数,一个是镜像名,一个是要在镜像中运行的命令。 注意:IMAGE=REPOSITORY[:TAG],如果IMAGE参数不指定镜像的TAG,默认TAG为latest。

[root@dockermain-154 run]# sudo docker run jdeathe/centos-ssh-apache-php echo 'hello world!'
hello world!
[root@dockermain-154 run]# sudo docker run jdeathe/centos-ssh-apache-php hostname
db7e1d2269fb

(6)列出容器

 查看最近生成的容器:docker ps -l

 查看正在运行的容器:docker ps

 [root@dockermain-154 run]# docker ps -l
CONTAINER ID  IMAGE         COMMAND    CREATED    STATUS      PORTS    NAMES
db7e1d2269fb  jdeathe/centos-ssh-apache-php:latest "hostname"   27 seconds ago  Exited (0) 26 seconds ago      adoring_babbage 

(7)显示容器标准输出

[root@dockermain-154 run]# docker ps -l
CONTAINER ID  IMAGE         COMMAND    CREATED    STATUS      PORTS    NAMES
db7e1d2269fb  jdeathe/centos-ssh-apache-php:latest "hostname"   27 seconds ago  Exited (0) 26 seconds ago      adoring_babbage  
[root@dockermain-154 run]# docker logs db7e1d2269fb
db7e1d2269fb

(8)给容器中安装程序或服务

[root@dockermain-154 run]# sudo docker run centos yum install -y httpd
Loaded plugins: fastestmirror
..........

Dependency Installed:

 apr.x86_64 0:1.4.8-3.el7              
 apr-util.x86_64 0:1.5.2-6.el7             
 centos-logos.noarch 0:70.0.6-1.el7.centos          
 httpd-tools.x86_64 0:2.4.6-19.el7.centos          
 mailcap.noarch 0:2.1.41-2.el7            

Failed:

  httpd.x86_64 0:2.4.6-19.el7.centos                                           

Complete!

(9)保存对容器中的修改并生成新的镜像

docker commit CONTAINERID [REPOSITORY[:TAG]]

REPOSITORY参数可以是新的镜像名字,也可以是旧的镜像名;如果和旧的镜像名和TAG都相同,会覆盖掉旧的镜像。

[root@dockermain-154 ~]# docker commit bd7cc4f4ac92 centos:httpd
1e0915f3247b86414ebc11fd994fc6abfb590ff3b1ab890949c845ee88b2d9f4
[root@dockermain-154 ~]# docker images
REPOSITORY      TAG     IMAGE ID   CREATED    VIRTUAL SIZE
centos       httpd    1e0915f3247b  9 seconds ago  320.8 MB
centos       latest    dade6cb4530a  10 days ago   210.1 MB
jdeathe/centos-ssh-apache-php latest    f1a489312a4a  3 months ago  297.7 MB

(10)停止正在运行的容器 

(11)查看容器或镜像详情

下面是我刚保存提交产生的新的容器

[root@dockermain-154 ~]# docker inspect 943e45b6e5f3
[{
 "AppArmorProfile": "",
 "Args": [],
 "Config": {
  "AttachStderr": true,
  "AttachStdin": true,
  "AttachStdout": true,
  "Cmd": [
   "/bin/bash"
  ],
  "CpuShares": 0,
  "Cpuset": "",
  "Domainname": "",
  "Entrypoint": null,
  "Env": [
   "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  ],
  "ExposedPorts": null,
  "Hostname": "943e45b6e5f3",
  "Image": "centos:httpd",
  "MacAddress": "",
  "Memory": 0,
  "MemorySwap": 0,
  "NetworkDisabled": false,
  "OnBuild": null,
  "OpenStdin": true,
  "PortSpecs": null,
  "StdinOnce": true,
  "Tty": true,
  "User": "",
  "Volumes": null,
  "WorkingDir": ""
 },

(12)删除容器

docker rm CONTAINERID

查看所有容器ID:docker ps -a -q

删除所有的容器:docker rm $(docker ps -a -q)

(13)删除镜像

docker rmi IMAGE

(14)查看docker的信息,包括Containers和Images数目、kernel版本等

[root@dockermain-154 ~]# docker info
Containers: 14
Images: 56
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Dirs: 89
Execution Driver: native-0.2
Kernel Version: 3.10.5-3.el6.x86_64
Operating System: <unknown>
CPUs: 1
Total Memory: 989.6 MiB
Name: dockermain-154
ID: W4PW:W3XR:FQZE:SBAA:2DS2:BM6N:DV5B:ARF2:3SZM:XGST:5ZF7:DFZV
WARNING: No swap limit support

(15)创建容器,并像平常ssh登录一样使用

[root@dockermain-154 ~]# docker run -i -t centos /bin/bash
[root@7c0414d03fe7 /]# ls
bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin selinux srv sys tmp usr var

以上所述是小编给大家介绍的部署维护docker环境的详细教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# docker  # 环境部署  # 部署维护  # 详解Windows下运用Docker部署Node.js开发环境  # Dockerfile 部署java web的环境详解  # docker kubernetes dashboard安装部署详细介绍  # 在docker中部署tomcat并且部署java应用程序的步骤详解  # 在Docker上开始部署Python应用的教程  # 在Docker上部署Python的Flask框架的教程  # 利用OpenVSwitch在多台主机上部署Docker的教程  # 镜像  # 重启  # 小编  # 正在运行  # 第一个  # 在此  # 上了  # 要在  # 用了  # 给大家  # 我刚  # 要先  # 安装程序  # 所述  # 给我留言  # 配置文件  # 感谢大家  # 要写  # 搜出  # 疑问请 


相关文章: 贸易公司网站制作流程,出口贸易网站设计怎么做?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  招贴海报怎么做,什么是海报招贴?  建站之星图片链接生成指南:自助建站与智能设计教程  网站制作费用多少钱,一个网站的运营,需要哪些费用?  如何快速搭建二级域名独立网站?  建站OpenVZ教程与优化策略:配置指南与性能提升  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  如何快速搭建支持数据库操作的智能建站平台?  济南专业网站制作公司,济南信息工程学校怎么样?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  西安专业网站制作公司有哪些,陕西省建行官方网站?  专业公司网站制作公司,用什么语言做企业网站比较好?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  如何高效完成自助建站业务培训?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  如何用景安虚拟主机手机版绑定域名建站?  如何生成腾讯云建站专用兑换码?  太平洋网站制作公司,网络用语太平洋是什么意思?  如何零基础在云服务器搭建WordPress站点?  大型企业网站制作流程,做网站需要注册公司吗?  宝塔新建站点为何无法访问?如何排查?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  html制作网站的步骤有哪些,iapp如何添加网页?  建站之星安装后如何配置SEO及设计样式?  如何选择美橙互联多站合一建站方案?  建站168自助建站系统:快速模板定制与SEO优化指南  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  如何有效防御Web建站篡改攻击?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  c# await 一个已经完成的Task会发生什么  北京制作网站的公司,北京铁路集团官方网站?  移民网站制作流程,怎么看加拿大移民官网?  如何通过VPS搭建网站快速盈利?  常州自助建站工具推荐:低成本搭建与模板选择技巧  安徽网站建设与外贸建站服务专业定制方案  如何自定义建站之星网站的导航菜单样式?  上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?  官网网站制作腾讯审核要多久,联想路由器newifi官网  建站DNS解析失败?如何正确配置域名服务器?  如何使用Golang table-driven基准测试_多组数据测量函数效率  股票网站制作软件,网上股票怎么开户?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。