原csdn地址https://blog.csdn.|

蜗牛使劲冲

园龄:7年6个月粉丝:3关注:10

使用docker搭建环境尝试-方法2

参考:https://www.jianshu.com/p/243849fa218e
http://cnblogs.com/btsn/p/11244887.html(安装php7.3)
https://blog.csdn.net/shenhonglei1234/article/details/84786443(mysql5.8以上设置权限分开设)
https://blog.csdn.net/u010071211/article/details/80594885(php-redis)
https://blog.csdn.net/moxioakong788/article/details/81744738(安装php5.6)

  • 之前尝试了docker搭环境,方式是直接拉个centos然后里面装lnmp,然后文件映射跑起来的,现在随着对docker认识的加深和认识到有更好的方式来搭,所以花了靠两天时间又搭了一个。
  • 这次的基础环境是用ubuntu,在ubuntu里面安装php+nginx跑一个docker简称容器A,然后再跑一个mysql的docker简称容器B,跑的时候用容器A直接连跑在外面的容器B就好了。

以下是简短的操作流程

// 先拉个最新的ubuntu
docker run -p 80:80 -it ubuntu:latest
// 进入,提前处理内部
apt-get update
apt-get install -y vim

// 步骤一
apt-get install nginx
nginx -v
nginx -t
service nginx status// url测试

// 步骤二
apt-get install software-properties-common python-software-properties
add-apt-repository ppa:ondrej/php && sudo apt-get update
apt-get -y install php7.3
// 安装php的各个扩展
apt-get install -y php7.3-fpm php7.3-mysql php7.3-curl php7.3-json php7.3-mbstring php7.3-xml php7.3-intl
php -v // phpinfo测试
php的各个扩展直接安装
apt-get install php7.3-gd
sudo apt-get install php7.3-soap
sudo apt-get install php7.3-gmp
sudo apt-get install php7.3-odbc
sudo apt-get install php7.3-pspell
sudo apt-get install php7.3-bcmath
sudo apt-get install php7.3-enchant
sudo apt-get install php7.3-ldap
sudo apt-get install php7.3-opcache
sudo apt-get install php7.3-readline
sudo apt-get install php7.3-sqlite3
sudo apt-get install php7.3-xmlrpc
sudo apt-get install php7.3-bz2
sudo apt-get install php7.3-interbase
sudo apt-get install php7.3-pgsql
sudo apt-get install php7.3-recode
sudo apt-get install php7.3-sybase
sudo apt-get install php7.3-xsl
sudo apt-get install php7.3-cgi
sudo apt-get install php7.3-dba
sudo apt-get install php7.3-phpdbg
sudo apt-get install php7.3-snmp
sudo apt-get install php7.3-tidy
sudo apt-get install php7.3-zip

然后nginx和php都安装好了,我们需要调整和php-fpm相连的conf使能跑php文件

/** 下面的fastcgi_pass使用的是
/etc/php/7.3/fpm/php-fpm.conf和/etc/php/7.3/fpm/pool.d/www.confd
的
listen = /run/php/php7.3-fpm.soc决定的
*/
server {
    listen 80;
    #server_name  www.deskpic.top;
    index index.html index.php
    client_max_body_size 50M;
   # error_log /home/deploy/apps/logs/example.error.log;
   # access_log /home/deploy/apps/logs/example.access.log;
   root /var/www/html;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php {
        try_files $uri = 404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param SCRIPT_NAME $fastcgi_script_name;
        fastcgi_index index.php;
        fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
#        fastcgi_pass 127.0.0.1:9000;
    }
}

然后尝试网页访问php文件成功🐱‍🚀

  • 接着原来尝试还是在ubuntu里面安装mysql,成功是成功了,但是怎么设置外部都是访问不了mysql,3306也开了都不行,然后就换种思路mysql使用镜像跑到外面来吧🐱‍🏍
docker pull mysql:8.0
docker run -dit -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --privileged=true --name=mysql_try 30f937e841c8
// 进入容器里面的mysql命令行
create user 'adminroot' identified with mysql_native_password by '666666';
grant all privileges on *.* to 'adminroot';
flush privileges;

先navicat尝试连接
在这里插入图片描述
再php尝试连接,搞好😎

<?php
$mysqli = new mysqli("localhost", "root", "password"); 
if(!$mysqli)  { 
    echo "连接失败!"; 
}else{ 
    echo "连接成功!"; 
} 
$mysqli->close(); 
  • 安装redis+php
apt-get install redis-server
apt-get install php7.3-readline
apt-get install php-redis

重启php查看service php7.3-fpm restart,OK
在这里插入图片描述
设置redis密码,vim /etc/redis/redis.conf设置requirepass nidemima
重启redis,service redis-server restart,命令行查看redis-cli -a nidemima

本文作者:蜗牛使劲冲

本文链接:https://www.cnblogs.com/warrenwt/p/18074565

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   蜗牛使劲冲  阅读(3)  评论(0编辑  收藏  举报  
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起