zhihuifan

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
一,CentOS 操作系统安装 Docker
系统要求
Docker 最低支持 CentOS 7。
Docker 需要安装在 64 位的平台,并且内核版本不低于 3.10。 CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。
 
1.安装docker
安装docker方法1:
yum install docker
(这里是一键安装docker,你也可以用下面的方法安装经验证,安装成功)
安装docker方法2:
移除旧的版本:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
安装一些必要的系统工具:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新 yum 缓存:
sudo yum makecache fast
安装 Docker-ce:
sudo yum -y install docker-ce
(安装docker-ce
sudo yum -y install docker-ce
 
安装过程中出现dependences依赖要求container-selinux>2.9问题
中间试了几种方法:
1)yum -y install container-selinux 报找不到源;
2)先安装docker-ce-selinux,依然报同样的错误;
3)通过wget http://mirrors.atosworldline.com/public/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpm
然后 执行 rpm -ivh container-selinux-2.68-1.el7.noarch.rpm --nodeps --force
接着执行 yum -y install docker-ce 
安装成功!)
 
启动 Docker 后台服务
sudo systemctl start docker
测试运行 hello-world
[root@runoob ~]# docker run hello-world

由于本地没有hello-world这个镜像,所以会下载一个hello-world的镜像,并在容器内运行。
 
(初识docker,不要太紧张,上面的指令可以一键帮你安装,如果出错就不要进行第二步了,一般也不会出错)
二,完成docker安装后,下载并安装docker的可视化界面 portainer
 
1.创建数据卷:
docker volume create portainer_data
2.启动一个不存在的容器:
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data \portainer/portainer
 
(说明:当docker运行一个不存在的容器,会默认从镜像库里面拉取镜像,实现安装并启动)
 
参数说明:
-d:容器在后台运行;
-p 9000:9000 :宿主机9000端口映射容器中的9000端口
-v /var/run/docker.sock:/var/run/docker.sock :把宿主机的Docker守护进程(Docker daemon)默认监听的Unix域套接字挂载到容器中;
-v portainer_data:/data :把宿主机portainer_data数据卷挂载到容器/data目录;
 
3.访问可视化界面
ip:port
(当启动完成后,就可以通过ip:port的方式去访问了)
 
例如:http://192.168.3.112:9000
首次访问登录需要注册用户,给用户admin设置密码:

3.1单机版本选择“Local",点击Connect即可连接到本地docker:

 

(从上图可以看出,有提示需要挂载本地 /var/run/docker.socker与容器内的/var/run/docker.socker连接。因此,在启动时必须指定该挂载文件,看到这里你可能感觉有点懵,不要担心,按照下面慢慢操作就可以)
 
之后你进入到的是主界面,在这里你可以对容器、镜像、网络、数据卷等进行管理:

 

点击后:

 

3.2上面是单机模式的,到这里也就结束了,下面是集群运行
在更多的情况下,我们会有一个docker集群,可能有几台机器,也可能有几十台机器,因此,进行集群管理就十分重要了,Portainer也支持集群管理,Portainer可以和Swarm一起来进行集群管理操作。首先要搭建了一个Swarm,本文不着重介绍swarm集群的安装。
 
portainer集群启动:
启动集群参考官方文档:https://portainer.io/install.html
$ docker service create \ --name portainer \ --publish 9000:9000 \ --replicas=1 \ --constraint 'node.role == manager' \ --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \ --mount type=bind,src=//opt/portainer,dst=/data \ portainer/portainer \ -H unix:///var/run/docker.sock
启动Portainer之后,首页还是给admin用户设置密码(这里和单机启动一样)。

 

进入后,如下图所示会发现多了关于swarm的选项,其它配置和单机运行的portainer一样,都很简单:

 

 
三,完成docker安装后,下载并安装docker-vnc
1.安装:
docker run -p 6080:80 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
(和前面是一样的,也是直接跑指令就可以)
 
完成后可以直接访问 ip+port

 

展示效果:
 

 (到此:docker , docker-vnc , docker-portainer 的安装和运行都已经完成,其实还是很简单的)

 
 
 
声明:此博客为个人学习之用,如与其他作品雷同,纯属巧合,转载请指明出处!
posted on 2024-06-05 14:43  Hi,ZHF  阅读(141)  评论(0)    收藏  举报