通过docker创建并使用apache容器

目标: 制作一个承载apache的镜像,并在一个Linux内启动5个apache容器对外提供服务

1、安装apache

docker run -t -i --name=qxy_apache centos
yum -y install httpd
exit

2、制作镜像

docker commit qxy_apache qxy_apache:v1.0
[root@centos-1 ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
qxy_apache          v1.0                9b6f8b6054b5        34 seconds ago      196.6 MB

3、创建容器

docker run --name=apache_8001 -d -t -i -p 8001:80 -v /root/httpd/httpd_8001:/var/www/html qxy_apache
docker run --name=apache_8002 -d -t -i -p 8002:80 -v /root/httpd/httpd_8002:/var/www/html qxy_apache
docker run --name=apache_8003 -d -t -i -p 8003:80 -v /root/httpd/httpd_8003:/var/www/html qxy_apache
docker run --name=apache_8004 -d -t -i -p 8004:80 -v /root/httpd/httpd_8004:/var/www/html qxy_apache
docker run --name=apache_8005 -d -t -i -p 8005:80 -v /root/httpd/httpd_8005:/var/www/html qxy_apache
#这里 -d 为后台运行,方便批量执行;需要注意的是如果只有-d容器将无法启动

4、制作最简页面^_^

[root@centos-1 httpd]# cd /root/httpd
[root@centos-1 httpd]# for i in *
> do
> echo "hello "$i > ./$i/index.html
> done
[root@centos-1 httpd]# find . -type f | xargs cat
hello httpd_8001
hello httpd_8002
hello httpd_8003
hello httpd_8004
hello httpd_8005

5、启动httpd

[root@centos-1 httpd]# for i in `seq 1 5`
> do
> docker exec apache_800$i httpd -k start
> docker top apache_800$i
> done

6、检验apache

[root@centos-2 ~]# for i in `seq 1 5`
> do
> curl http://192.168.110.111:800$i
> done
hello httpd_8001
hello httpd_8002
hello httpd_8003
hello httpd_8004
hello httpd_8005

 

你可能感兴趣的:(通过docker创建并使用apache容器)