Docker 是一个[开源]的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 [Linux]或 Windows 机器上,也可以实现[虚拟化]。容器是完全使用[沙箱]机制,相互之间不会有任何接口。(来自百度百科) [图片] 接着上一篇文章VirtualBox虚拟机安装cent ..

CentOS7 安装 Docker,并开启 2375 端口 (适用于开发人员)

Docker 是一个[开源]的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 [Linux]或 Windows 机器上,也可以实现[虚拟化]。容器是完全使用[沙箱]机制,相互之间不会有任何接口。(来自百度百科)
timg.jpg
接着上一篇文章VirtualBox虚拟机安装centos7 Minimal来说。
我们在完成 CentOS7 虚拟机的安装后,接下来配置 CentOS7 的网络,防火墙。需用到 xshell,xftp 工具,具体如何使用,自行百度。
配置 CentOS7 网络
进入虚拟机系统(使用 root 用户),使用 nmtui 命令进行配置,首先配置网络

image.png

选择第一个网卡,进行如下配置

image.png

激活网络

image.png

使用 ip addr 命令,可以看到,ip 已配置完成

image.png

ping 命令测试,也可连接外网

image.png

配置 hostname

image.png

配置完成后可使用 hostname 命令查看

image.png

配置防火墙
使用命令
systemctl stop firewalld (关闭防火墙)
systemctl disable firewalld (禁用防火墙,开机不会启动)

image.png

关闭 selinux
vi /etc/selinux/config

image.png

配置完成,重启虚拟机
此时,我们就可以通过宿主机的 xshell 或 SecureCRT 连接这个虚拟机啦。

image.png

检查一下防火墙与 selinux 状态,可以看到,都已经关闭。

image.png

安装 Docker
这里我们安装最新版的 docker-ce,不适用 CentOS 源自带的 docker(太旧了)
先装一些工具软件

yum install -y VIM net-tools curl yum-utils device-mapper-persistent-data lvm2 curl wget

安装完成

image.png

下载并装入阿里的 docker-ce 源 repo

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装 docker-ce

yum install -y docker-ce

配置 docker,这里我配置的是 52375 端口,默认为 2375,开启此端口有风险,建议生产环境不要开启

VIM /usr/lib/systemd/system/docker.service

ExecStart= # 1
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:52375 -H unix://var/run/docker.sock #2

网上好多教程没有第一行,我试过,配置完成后无法启动 docker,这样才是正确的方式。

image.png

保存后,重新加载配置

systemctl daemon-reload
启动 docker
systemctl start docker
systemctl enable docker

查看 52375 端口,可以看到已经开启

netstat -anlp|grep 52375

image.png

使用 docker pull 拉取一个 nginx 的镜像

docker pull nginx:alpine

image.png

拉取完成,运行 nginx 镜像

docker run --rm --name nginx --hostname nginx -P -d nginx:alpine

image.png

通过 docker ps 可以看到 nginx 已运行,80 端口映射到了虚拟机的 32768 端口,使用 curl 请求这个端口,可以加载出 nginx 主页源码

curl localhost:32768

image.png

通过宿主机浏览器访问虚拟机 32768 端口

image.png

到这里,CentOS7 安装 docker 已完成。

以上是我个人的使用经验,如果有什么错误,请大家指正。

  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    169 引用 • 178 回帖 • 554 关注
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包括系统。

    238 引用 • 513 回帖 • 617 关注
  • 2375
    1 引用
回帖
请输入回帖内容...