在幕客的课程《python自动化运维实战》讲解到对于docker容器扫描和宿主机扫描的时候,用到了docker容器,特出一篇关于docker容器的文章,文章的目的,是为了方便大家快学会搭建上自己的docker容器环境平台。
一、机器准备
1、系统版本
ubuntu16.04 (64位数)
2、内核版本
#uname -r 4.4.0-31-generic
3、一台硬件服务器、或者虚拟机
二、安装docker服务
1、安装ca证书
//更新源
$ apt-get update
$ sudo apt-get install apt-transport-https ca-certificates
2、倒入GPG密钥
$ sudo apt-key adv
--keyserver hkp://ha.pool.sks-keyservers.net:80
--recv-keys 58118E89F3A912897C070ADBF76221572C52609D
3、添加docker源
只要将 <REPO> 替换成相应系统的源地址即可
$ echo "<REPO>" | sudo tee /etc/apt/sources.list.d/docker.list
$ echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" | sudo tee /etc/apt/sources.list.d/docker.list
4、验证 APT-get命令 能否正确获取
$ apt-cache policy docker-engine
5、安装docker引擎
apt-get install -y docker-engine
6、启动docker服务
service docker start
三、docker测试
1、测试方式一,用docker命令测试
$ docker
Usage: docker COMMAND
A self-sufficient runtime for containers
2、测试方式二,使用docker run进行
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:be0cd392e45be79ffeffa6b05338b98ebb16c87b255f48e297ec7f98e123905c
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
四、运行测试使用docker容器
1、配置阿里云镜像地址
浏览器打开https://dev.aliyun.com/search.html
点击“管理中心”-“镜像加速器”-“镜像地址” 看到专属加速地址:“https://xxxxx.mirror.aliyuncs.com”
复制这个地址。
2、配置阿里云镜像,并重启服务
$ vim /etc/docker/daemon.json
配置如下内容:
{
"registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"]
}
重启docker服务
$ sudo /etc/init.d/docker restart
3、本地运行容器
$ docker pull registry.cn-hangzhou.aliyuncs.com/atliwen/centos6.8-ssh
$ docker run -it -p 48122:22 registry.cn-hangzhou.aliyuncs.com/atliwen/centos6.8-ssh
注意:不能用Ctrl +D 退出,会造成容器关闭。使用 Ctrl + p 再按Ctrl +q 推出容器。
用终端启动sshd服务和设置root密码
4、客户端校验
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ffff931f6ed1 registry.cn-hangzhou.aliyuncs.com/atliwen/centos6.8-ssh "/bin/bash" 2 minutes ago Up 2 minutes 0.0.0.0:48122->22/tcp gracious_babbage
如果进程存在说明,没问题了。
再用telnet 映射的ssh端口,结果会如下:
$ telnet 192.168.1.108 48122
Trying 192.168.1.108...
Connected to localhost.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.3
课程介绍:https://coding.imooc.com/class/160.html
课程问答区:https://coding.imooc.com/learn/qa/160.html