温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker怎么安装LNMP环境

发布时间:2022-06-30 09:58:49 来源:亿速云 阅读:150 作者:iii 栏目:开发技术

这篇文章主要介绍“Docker怎么安装LNMP环境”,在日常操作中,相信很多人在Docker怎么安装LNMP环境问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker怎么安装LNMP环境”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Docker安装LNMP环境

1、安装Docker

yum install docker # 启动并加入开机启动 sudo systemctl start docker sudo systemctl enable docker

2、 安装nginx

# 拉取管方镜像 docker pull nginx # 创建并运行容器,映射端口为80 docker run --name nginx -p 80:80 -d nginx # 访问IP,nginx能够正常运行

3、 安装PHP

# 拉取管方镜像,这里拉取的是php7,根据自己所需拉取 docker pull phpdockerio/php7-fpm

4、 查看nginx运行路径

# 进入nginx容器 docker exec -it nginx bash # 查看nginx配置文件 cat /etc/nginx/conf.d/default.conf -n # 找到location / { #     root    /usr/share/nginx/html;#这是nginx默认运行路径 #     index   index.html index.html; # }

5、 创建并运行php容器

docker run --name phpfpm -d 9000:9000 -v /var/www/html:/usr/share/nginx/html -d phpdockerio/php7-fpm

6、 进入php容器,创建index2.php测试文件

# 进入php容器 docker exec -it phpfpm bash # 进入运行目录 cd /usr/share/nginx/html # vim 创建index2.php # 因为docker没有安装vim,此时运行 apt-get update apt-get install vim cat << EOF > /root/.vimrc :set encoding=utf-8 :set fileencodings=ucs-bom,utf-8,cp936 :set fileencoding=gb2312 :set termencoding=utf-8 EOF # 创建index2.php vim index2.php <?php     echo 1; ?> # esc :wq 保存退出

7、 获取到phpfpm 这个容器的ip

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' phpfpm # 172.17.0.3

8、配置nginx 以便支持php文件访问

docker exec -it nginx bash # 进入nginx配置目录 cd /etc/nginx/conf.d # 安装vim apt-get update apt-get install vim # 编辑default.conf配置文件 vim default.conf # 在default.conf中加入 location / {     root	  /usr/share/nginx/html/tp5.1/public;#不是tp的话去掉/tp5.1/public     index	  index.html index.htm index.php;          if (!-e $request_filename){         rewrite ^(.*)$ /index.php?s=/$1 last;         break;     } } location ~ \.php$ {	root            /usr/share/nginx/html/tp5.1/public;#不是tp的话去掉/tp5.1/public	fastcgi_pass    172.17.0.3:9000;	fastcgi_index   index.php;	fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;	fastcgi_param	PATH_INFO $fastcgi_path_info;	fastcgi_param	PATH_TRANSLATED $document_root$fastcgi_path_info;	fastcgi_split_path_info	^((?U).+\.php)(/?.+)$;	include         fastcgi_params; } # 保存退出,重启nginx docker restart nginx # 访问ip/index2.php,成功

9、 拉取Mysql镜像

docker pull mysql # 创建并运行mysql容器 docker run --name mysql -p 3306:3306 -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql #这是使用navicat连接会报错 docker exec -it mysql /bin/bash mysql -uroot -p #授权 GRANT ALL ON *.* TO 'root'@'%'; #刷新权限 flush privileges; #更新加密规则 ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更新root密码 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; #刷新权限 flush privileges;

10、 服务器文件放入容器中

docker ps  #查看容器id docker cp linux文件 容器id:容器路径
#linux中查找php.ini php -i | grep 'php.ini' #docker 因配置文件出错无法进入容器内解决办法 #将容器配置文件复制到服务器上 1.docker cp mynginx:/etc/nginx/conf.d/default.conf /users/nginx/default.conf #修改后再写回容器中 2.docker cp /users/nginx/default.conf mynginx:/etc/nginx/conf.d/default.conf

到此,关于“Docker怎么安装LNMP环境”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI