【原创】Docker实战系列

Docker部署应用-Apache服务器安装

2020-04-21  本文已影响0人  复苏的兵马俑

1、前置准备

   1)CentOS 8.0 图形化安装
   2)CentOS 8.0 基本配置
   3)CentOS 8.0 创建LVM分区
   4)CentOS 8.1 安装Docker

2、拉取Apache镜像

[root@Server ~]# docker image ls -a
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
nginx                   1.17.10             e791337790a6        3 days ago          127MB
elleflorio/svn-server   latest              8cc13133f6ed        3 months ago        49.7MB
[root@Server ~]# docker image pull httpd:2.4.43
2.4.43: Pulling from library/httpd
123275d6e508: Already exists
e984dd982a6e: Pull complete
963280e5cf81: Pull complete
6faf90d050b2: Pull complete
962b56984bb0: Pull complete
Digest: sha256:d5dc0d279039da76a8b490d89a5c96da83a33842493d4336b42ccdfbd36d7409
Status: Downloaded newer image for httpd:2.4.43
docker.io/library/httpd:2.4.43
[root@Server ~]# docker image ls -a
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
nginx                   1.17.10             e791337790a6        3 days ago          127MB
httpd                   2.4.43              bdc169d27d36        5 days ago          166MB
elleflorio/svn-server   latest              8cc13133f6ed        3 months ago        49.7MB

3、运行临时容器

[root@Server ~]# docker image ls -a
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
nginx                   1.17.10             e791337790a6        4 days ago          127MB
httpd                   2.4.43              bdc169d27d36        5 days ago          166MB
elleflorio/svn-server   latest              8cc13133f6ed        3 months ago        49.7MB
[root@Server ~]# docker container ls -a
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                   NAMES
7a5b653ef143        nginx:1.17.10                  "nginx -g 'daemon of…"   2 hours ago         Up About an hour    0.0.0.0:8000->80/tcp                                    nginxsrv
dc4f9e71e3b3        elleflorio/svn-server:latest   "/init"                  3 hours ago         Up 3 hours          443/tcp, 0.0.0.0:3690->3690/tcp, 0.0.0.0:8001->80/tcp   svnsrv
[root@Server ~]# docker container run --name test -d httpd:2.4.43
55c5ded1e02679a941c5a1c5b306cd8eaed4770ac70473e33341df0d17f26971

4、复制容器文件

[root@Server ~]# mkdir -p /data/apache
[root@Server ~]# docker container cp test:/usr/local/apache2/htdocs /data/apache/
[root@Server ~]# docker container cp test:/usr/local/apache2/conf /data/apache/
[root@Server ~]# docker container cp test:/usr/local/apache2/logs /data/apache/
[root@Server ~]# mv /data/apache/conf /data/apache/conf.d
[root@Server ~]# mv /data/apache/htdocs /data/apache/www
[root@Server ~]# ls -l /data/apache
total 0
drwxr-xr-x 4 root root 84 Apr 16 16:54 conf.d
drwxr-xr-x 2 root root 23 Apr 21 19:02 logs
drwxr-xr-x 2 root root  6 Apr 21 19:04 www

5、删除临时容器

[root@Server ~]# docker container ls -a
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                   NAMES
55c5ded1e026        httpd:2.4.43                   "httpd-foreground"       5 minutes ago       Up 5 minutes        80/tcp                                                  test
7a5b653ef143        nginx:1.17.10                  "nginx -g 'daemon of…"   2 hours ago         Up 2 hours          0.0.0.0:8000->80/tcp                                    nginxsrv
dc4f9e71e3b3        elleflorio/svn-server:latest   "/init"                  3 hours ago         Up 3 hours          443/tcp, 0.0.0.0:3690->3690/tcp, 0.0.0.0:8001->80/tcp   svnsrv
[root@Server ~]# docker container rm -f test
test
[root@Server ~]# docker container ls -a
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                   NAMES
7a5b653ef143        nginx:1.17.10                  "nginx -g 'daemon of…"   2 hours ago         Up 2 hours          0.0.0.0:8000->80/tcp                                    nginxsrv
dc4f9e71e3b3        elleflorio/svn-server:latest   "/init"                  3 hours ago         Up 3 hours          443/tcp, 0.0.0.0:3690->3690/tcp, 0.0.0.0:8001->80/tcp   svnsrv

6、创建正式容器

[root@Server ~]# docker container ls -a
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                   NAMES
7a5b653ef143        nginx:1.17.10                  "nginx -g 'daemon of…"   2 hours ago         Up 2 hours          0.0.0.0:8000->80/tcp                                    nginxsrv
dc4f9e71e3b3        elleflorio/svn-server:latest   "/init"                  3 hours ago         Up 3 hours          443/tcp, 0.0.0.0:3690->3690/tcp, 0.0.0.0:8001->80/tcp   svnsrv
[root@Server ~]# docker run -d -p 8002:80 \
> --name apachesrv \
> -v /data/apache/www:/usr/local/apache2/htdocs \
> -v /data/apache/conf.d:/usr/local/apache2/conf \
> -v /data/apache/logs:/usr/local/apache2/logs \
> --privileged=true --restart=always httpd:2.4.43
c6b0ae0564384ad995ab969529c7be985f9e253d8f533c6f4816527982e0a5c4
[root@Server ~]# docker container ls -a
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS                                                   NAMES
c6b0ae056438        httpd:2.4.43                   "httpd-foreground"       3 seconds ago       Up 2 seconds        0.0.0.0:8002->80/tcp                                    apachesrv
7a5b653ef143        nginx:1.17.10                  "nginx -g 'daemon of…"   2 hours ago         Up 2 hours          0.0.0.0:8000->80/tcp                                    nginxsrv
dc4f9e71e3b3        elleflorio/svn-server:latest   "/init"                  3 hours ago         Up 3 hours          443/tcp, 0.0.0.0:3690->3690/tcp, 0.0.0.0:8001->80/tcp   svnsrv

7、验证Apache

上一篇下一篇

猜你喜欢

热点阅读