Docker安裝LNMP環(huán)境的詳細(xì)過(guò)程(可部署TP項(xiàng)目)
Docker安裝LNMP環(huán)境
1、安裝Docker
yum install docker # 啟動(dòng)并加入開(kāi)機(jī)啟動(dòng) sudo systemctl start docker sudo systemctl enable docker
2、 安裝nginx
# 拉取管方鏡像 docker pull nginx # 創(chuàng)建并運(yùn)行容器,映射端口為80 docker run --name nginx -p 80:80 -d nginx # 訪問(wèn)IP,nginx能夠正常運(yùn)行
3、 安裝PHP
# 拉取管方鏡像,這里拉取的是php7,根據(jù)自己所需拉取 docker pull phpdockerio/php7-fpm
4、 查看nginx運(yùn)行路徑
# 進(jìn)入nginx容器 docker exec -it nginx bash # 查看nginx配置文件 cat /etc/nginx/conf.d/default.conf -n # 找到location / { # root /usr/share/nginx/html;#這是nginx默認(rèn)運(yùn)行路徑 # index index.html index.html; # }
5、 創(chuàng)建并運(yùn)行php容器
docker run --name phpfpm -d 9000:9000 -v /var/www/html:/usr/share/nginx/html -d phpdockerio/php7-fpm
6、 進(jìn)入php容器,創(chuàng)建index2.php測(cè)試文件
# 進(jìn)入php容器 docker exec -it phpfpm bash # 進(jìn)入運(yùn)行目錄 cd /usr/share/nginx/html # vim 創(chuàng)建index2.php # 因?yàn)閐ocker沒(méi)有安裝vim,此時(shí)運(yùn)行 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 # 創(chuàng)建index2.php vim index2.php <?php echo 1; ?> # esc :wq 保存退出
7、 獲取到phpfpm 這個(gè)容器的ip
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' phpfpm # 172.17.0.3
8、配置nginx 以便支持php文件訪問(wèn)
docker exec -it nginx bash # 進(jìn)入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 # 訪問(wèn)ip/index2.php,成功
9、 拉取Mysql鏡像
docker pull mysql # 創(chuàng)建并運(yùn)行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連接會(huì)報(bào)錯(cuò) docker exec -it mysql /bin/bash mysql -uroot -p #授權(quán) GRANT ALL ON *.* TO 'root'@'%'; #刷新權(quán)限 flush privileges; #更新加密規(guī)則 ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更新root密碼 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; #刷新權(quán)限 flush privileges;
10、 服務(wù)器文件放入容器中
docker ps #查看容器id docker cp linux文件 容器id:容器路徑
#linux中查找php.ini php -i | grep 'php.ini' #docker 因配置文件出錯(cuò)無(wú)法進(jìn)入容器內(nèi)解決辦法 #將容器配置文件復(fù)制到服務(wù)器上 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
到此這篇關(guān)于Docker簡(jiǎn)單安裝LNMP環(huán)境(可部署TP項(xiàng)目)的文章就介紹到這了,更多相關(guān)Docker 安裝LNMP環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mac為docker和kubectl添加自動(dòng)補(bǔ)全命令的方法
很多朋友不太明白如何為docker和kubectl添加自動(dòng)補(bǔ)全命令,本文通過(guò)一些示例給大家介紹kubectl基礎(chǔ)概念及語(yǔ)法知識(shí),需要的朋友參考下吧2021-06-06harbor可視化私有鏡像倉(cāng)庫(kù)環(huán)境及服務(wù)部署示例
這篇文章主要為大家介紹了harbor可視化私有鏡像倉(cāng)庫(kù)環(huán)境及服務(wù)部署示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04如何通過(guò)vs2017的Dockerfile來(lái)生成鏡像
這篇文章主要為大家詳細(xì)介紹了如何通過(guò)vs2017的Dockerfile來(lái)生成鏡像,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07Docker如何多步構(gòu)建生成dubbo-admin鏡像詳解
dubbo-admin是dubbo框架的管理平臺(tái),下面這篇文章主要給大家介紹了關(guān)于Docker如何多步構(gòu)建生成dubbo-admin鏡像的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2018-04-04docker5 全功能harbor倉(cāng)庫(kù)搭建過(guò)程
Harbor是構(gòu)建企業(yè)級(jí)私有docker鏡像的倉(cāng)庫(kù)的開(kāi)源解決方案,本文給大家分享docker5 全功能harbor倉(cāng)庫(kù)搭建過(guò)程,感興趣的朋友一起看看吧2021-06-06Docker?Compose+Nestjs構(gòu)建Dapr?Redis發(fā)布訂閱分布式應(yīng)用
這篇文章主要為大家介紹了Docker?Compose+Nestjs構(gòu)建Dapr?Redis發(fā)布訂閱分布式應(yīng)用步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08解決執(zhí)行docker daemon命令時(shí)出錯(cuò)的問(wèn)題
daemon 這是docker 操作中十分常用的命令指定項(xiàng),最近在運(yùn)行docker daemon命令卻發(fā)生了錯(cuò)誤,后來(lái)通過(guò)測(cè)試各種方法終于解決了,現(xiàn)在將方法分享給大家,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。2016-11-11