docker第四期 简单部署 nginx php mysql

前言

接下来的我们用简单的方式来部署以下 web应用的三个常用环境。都是基于docker-hub库
首先在/home目录下创建一个lnmp目录存放接下来的三个环境相关的文件,再创建一个 www的工作目录放置我们的php文件

部署php

> docker run -p 9000:9000 --name myphp -v /home/www:/home/www -w /home/www -d php:7.4-fpm

部署nginx

> docker run --name mynginx -p 8080:80 -v /home/www:/home/www -w /home/www -v /home/lnmp/nginx/conf.d:/etc/nginx/conf.d:ro -d --link myphp:php nginx

在/home/lnmp/nginx/conf.d 目录下创建default.conf 文件。default.conf的默认配置在下方

	参数说明:
-p 端口指定
--name 给容器命名
-v 数据卷挂载 宿主机:容器    // 挂载小知识如果想挂载宿主机当前目录下可以使用 $PWD/www
-w 设置工作目录
-d 后台运行
--link 被链接容器名:重新命名 链接两个容器并且互相通信

default.conf 参考

server {
    listen       80;
    server_name  localhost;
    root     /home/www;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        index index.php index.html index.htm;
    }

   location ~ \.php$ {
        fastcgi_pass   php:9000;  # 这里的php 就是 --link myphp:php 这个重新命名的php
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

注意–link最好使用 命名,要不然我们就需要 通过命令去查找容器的ip了
docker inspect 容器名/id | grep “IPAddress”

结果

>$root@VM-8-11-ubuntu:/home# docker run -p 9000:9000 --name myphp -v /home/www:/home/www -w /home/www 
-d php:7.4-fpm
a9b8e356560c522547d93f4ff6a4aee5c6c5a91c0e9373e9dc90a93365a048a4

> $root@VM-8-11-ubuntu:/home# docker run --name mynginx -p 8080:80 -v /home/www:/home/www -w /home/www 
-v /home/lnmp/nginx/conf.d:/etc/nginx/conf.d:ro -d --link myphp:php nginx
84c701b27f2c07fb3a154f089d237c94b16d49e0fc48288876262d3a4b532572

> root@VM-8-11-ubuntu:/home/www# vim index.php // 创建index.php 打印一个hello world 测试

在这里插入图片描述

这时可以看到已经 nginx 和 php 已经连接成功了

部署MySQL

docker run --name mymysql -p 3305:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

在这里插入图片描述

总结

通过上面的三个命令,我们就可以将这三个环境搭建好啦。不过有三点要注意的

  • 像mysql这种数据库的数据,我们最好挂载到我们的宿主机,这样就算容器挂了,数据还不会丢失
  • 我们尽量将容器内的配置文件挂载到宿主机,这样改容器时就不用进入到容器中了
  • –link这个命令时我们暂时采用的,我们也可以用 --network 去解决

下一期我们就来好好讲讲 dockerfile 重中之重的内容

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值