国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP本地開發環境docker安裝

2020-03-22 18:56:46
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了關于PHP本地開發環境docker安裝,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

docker php 本地開發環境

魯迅:不想打產品的程序員,不是好銷售

前言

很多人在配置docker的時候,會因為不了解他里面的目錄結構,配置問題,從而會導致很多不明白的地方。

但是,小伙子,你看這篇文章,你就看對了。我會用“短小精悍”的語言快速的帶你入docker 坑。可能文章里面,寫的有什么跟你的價值觀不對的地方,請用你的小拳拳砸你的ctrl+F4 。我是一個經不起罵的人,如果你罵我 (我會給你機會罵我?先打死再說)(手動滑稽)。

強烈建議 csdn 加入emoji表情。

mysql安裝正文

mysql 安裝相對來說簡單很多

[root@test app]#  docker pull mysql:5.7[root@test app]#   docker run - -name mysql_server -p 3308:3308 -e MYSQL/_ROOT/_PASSWORD=123456 -d mysql:5.7命令解釋 # -e 內置html' target='_blank'>環境變量 這里是給ROOT 帳號設置密碼沒了。

但是,我們安裝 需要先安裝mysql 再安裝php 因為 容器之間,需要–link 來使兩個容器之間有交互通訊。否則。嘿嘿,你懂的。php 里面連接不了mysql 。命令解釋,下文全部會有。。

php安裝正文1.準備工作

因為題主的電腦是ubuntu 系統,所以該篇的一些命令,統一為ubuntu 除了安裝之外,貌似也沒啥不兼容其他系統的了。
docker安裝,
windows安裝
linux
mac

1、docker環境
2、php:7.2.4-fpm鏡像(這個要針對你項目的環境)官方鏡像
3、MySql 官方鏡像(看你自己心情裝不裝)

(滑稽) 有些讀者可能會問,為什么不要nginx|apache ,因為簡化你的操作。讓你更快的入門安裝,還有就是讓你更快的寫代碼。

當你下載好了docker ,開啟docker

版本信息
當docker開啟后,docker version打印Server信息,沒有開啟則不打印。
請開啟docker

2.開始
1、[root@test app]# docker pull php:7.2.5-fpm              #docker pull 鏡像,從docker鏡像中拉取某個鏡像 2、[root@test app]# docker images                          #docker 當前所有的鏡像名字 imagesREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEdocker.io/php       7.2.5-fpm           e6970efc6d34        3 days ago          367 MB3、[root@test app]# docker run -d -p 8080:8080 --link mysql_server:mysql_server -v ~/app:/app -w /app php:7.2.5-fpm php -S 0.0.0.0:8080 -t /app 命令解釋# -d 后臺默認啟動# -p 映射端口8080 映射到本機8080  使用方式 本地端口:容器端口# -v 掛在目錄 ~/app 掛載到容器里面 /app目錄 # -w 工作目錄 /app目錄 相當于cd (在這里,我們可以不用)# --link  連接容器    容器名:內部使用的名字  # php:7.2.5-fpm 鏡像名# php -S 0.0.0.0:8080 -t /app  php自帶cli Server  用這個可以免除nginx|apache 安裝,指定端口為8080 。4、[root@test app]# docker ps   #查看正在運行的容器CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                              NAMES9354f9338e29        php:7.2.5-fpm       "docker-php-entryp..."   4 minutes ago       Up 4 minutes        0.0.0.0:8080->8080/tcp, 9000/tcp   naughty_fermi這里我們可以看出,NAMES 下是容器名,當我們沒有指定的時候,docker 會自動創建一個容器名。PORTS 端口,0.0.0.0:8080->8080/tcp 本機8080 映射到容器8080
3.測試:

我們在app目錄下新建一個index.php

<?php phpinfo();

打開127.0.0.1:8080 即可看到我們熟悉的phpinfo

4.安裝擴展

如果不需要安裝擴展,請看注意!!!

這里我們講解2種方式安裝拓展

1.進入容器里面安裝擴展

一、查看docker容器名

[root@test app]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                              NAMES9354f9338e29        php:7.2.5-fpm       "docker-php-entryp..."   31 minutes ago      Up 31 minutes       0.0.0.0:8080->8080/tcp, 9000/tcp   naughty_fermi

我們在這里看到了 docker 名字為 naughty_fermi
二、進入容器

1.進入容器[root@test app]# docker exec -i -t naughty_fermi /bin/bashroot@9354f9338e29:/app# #這樣子,看到我們就進入了正在運行的容器命令解釋# docker exec  進入正在使用的容器# -i :即使沒有附加也保持STDIN 打開 一般和-t合作使用# -t :分配一個偽終端  一般和-i 合作使用  # /bin/bash 打開交互式終端終端2. [root@test app]# docker- 按兩下tab 可以看到docker-php-entrypoint     docker-php-ext-configure  docker-php-ext-enable     docker-php-ext-install    docker-php-source #docker 根據一些常用庫 已經給我們寫好了一些腳本 docker -php  github 地址[github]( 3.安裝擴展 舉例:sockets [root@test app]#  docker-php-ext-install sockets 靜靜等待他編譯安裝[root@test app]# php -m  # 就能夠看到sockets庫了。4.退出容器 退出容器的方法有點特殊,需要ctrl+p  再crtl + q 這樣,才能在后臺繼續掛起root@9354f9338e29:/app# [root@test app]# [root@test app]# 4.我們需要重啟一下我們cli server [root@test app]# ps -ef | grep php root     11840 11808  0 17:04 ?        00:00:00 php -S 0.0.0.0:8080 -t /approot     14923  9900  0 17:54 pts/1    00:00:00 grep --color=auto php找到我們的 php cli-server pid 為11840 docker 里面的這些進程,是在本機里面能夠看到的。這里是解釋 [解釋](http://dockone.io/question/529)我們回到了我們的本機上。[root@test app]# kill -9 11840  # 殺死我們的進程因為我們殺死了我們的進程,所以 php 也會自動關閉我們從新開啟這個 容器 比如 上面可以看到 我們NAMES 為 naughty_fermi[root@test app]# docker start naughty_fermi 這樣就開啟了這個擴展

這樣我們的擴展就已經安裝好了

注意:有一些擴展是需要一些依賴的,在我們安裝一些拓展,前面或許需要一部分依賴。php代碼里面連接,mysql host 就不能用127.0.0.1 或者localhost 了。把鏈接換為 mysql_server mysql 的容器名字。

2.外部安裝拓展
1. [root@test app]#  docker exec -d naughty_fermi docker-php-ext-install opcache#這里我們用opcache 為例docker exec 不用解釋了吧。上面有# -d 后臺默認# 容器名 后面是在容器里面運行的 命令2.重復內部安裝的 4操作 就可以了cli-server 和php-fpm 類似,每次新增擴展 都需要重新啟動一下。

當我們第一次配置好了之后,后面就需要docker start 容器名來開啟,這里來講解幾個命令

1、docker start 容器名 開啟容器
2、docker stop 容器名 停止容器
3、docker kill 容器名 殺死容器

在docker run 里面 可以指定- -name 容器名字 來 給容器取名字 例如

docker run -d -p 8080:8080 - -name php_server -v ~/app:/app -w /app php:7.2.5-fpm php -S 0.0.0.0:8080 -t /app
這樣,我們容器名字 就可以自己定義了

其他的,有什么問題,發郵件給我吧。我的郵件是

uyy2244@gmail.com

記得請詳細說明問題哦。否則 不予理睬。。

謹記:此文章只適用于本地開發環境。

以上就是本篇文章的全部內容了,更多相關內容請關注PHP 。

相關推薦:

php本地開發環境搭建最好用的6個開發環境推薦

以上就是PHP本地開發環境docker安裝的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 壤塘县| 安徽省| 金堂县| 嘉峪关市| 和政县| 平罗县| 江达县| 辽源市| 陇川县| 六枝特区| 蒙山县| 满城县| 荥经县| 杭州市| 连城县| 莱芜市| 清远市| 蓬莱市| 修水县| 阿拉善右旗| 石狮市| 五台县| 宕昌县| 济南市| 罗平县| 和龙市| 都江堰市| 应城市| 西乡县| 荃湾区| 三明市| 虹口区| 霍城县| 宁河县| 内丘县| 浏阳市| 临猗县| 汝州市| 富民县| 称多县| 方山县|