日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

WSL2配置docker和PHP

發布時間:2024/1/8 php 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WSL2配置docker和PHP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

WSL2 配置docker和PHP

文章目錄

    • WSL2 配置docker和PHP
      • 1.了解PHP
      • 2.WSL升級為WSL2
      • 3.WSL2上搭建docker
        • ①安裝docker
        • ②基本使用
          • Ⅰ.開啟關閉docker
      • 4.docker搭建PHP環境
        • ①PHP環境準備
          • 拉取`nginx`
        • ②Hello PHP(CLI命令行方式)
          • Ⅰ.拉取PHP鏡像
          • Ⅱ.運行容器,端口映射
            • 查看容器
            • 移除容器
          • Ⅲ.進入PHP交互模式
          • Ⅳ.利用Linux的vi編輯器
          • Ⅴ.瀏覽器實現Hello PHP
            • 可以加入CSS樣式
        • ③Hello PHP(HTTP服務器方式)
          • Ⅰ.拉取apache鏡像
          • Ⅱ.運行容器,端口映射
          • Ⅲ.創建index.php,訪問localhost:8000

1.了解PHP

來自百度百科:

? PHP(PHP: Hypertext Preprocessor)即“超文本預處理器”,是在服務器端執行的腳本語言,尤其適用于Web開發并可嵌入HTML中

2.WSL升級為WSL2

參考知乎文章:https://zhuanlan.zhihu.com/p/356397851、https://zhuanlan.zhihu.com/p/356396288

? 可以在Win10家庭中文版安裝Hyper-V,看上面文章??

3.WSL2上搭建docker

? 何為docker,截圖來自知乎:

? 通過此文:https://zhuanlan.zhihu.com/p/23599229了解docker基礎知識

? 還有此文:https://zhuanlan.zhihu.com/p/187505981

? and this:Docker容器和鏡像的區別

①安裝docker

? 具體步驟當時忘記記錄了…不過大體上和這篇博客還有這篇上的原生linux安裝docker方式差不多

? 噢噢想起來了,還看了這個:https://www.bilibili.com/video/BV1nt4y1k7Fy?from=search&seid=7494207446618727184

②基本使用

Ⅰ.開啟關閉docker

開啟docker,一開始網上查的是systemctl start docker

查詢原因 :博客鏈接

下面兩張圖均來自上方那個鏈接

?

  • 故啟動為:
sudo service docker start

  • 關閉為:
service docker stop

  • 查看狀態為:
service docker status

4.docker搭建PHP環境

①PHP環境準備

sudo apt update sudo apt install php sudo apt install libapache2-mod-php

Apache是啥:

  • 來自百度百科:

  • B站上的簡介:

    https://www.bilibili.com/video/BV1zE411v7LW?from=search&seid=4016853372192845543&spm_id_from=333.337.0.0

拉取nginx

參考教程:B站 Windows10開發環境搭建(3)在WSL2里安裝Docker

(大概從六分半開始講nginx)

②Hello PHP(CLI命令行方式)

Ⅰ.拉取PHP鏡像

? 我拉了兩個

? 一個是參考👉這個教程拉的php:7.2.0-cli-alpine3.6

另一個是:

docker pull php:7.4-cli-alpine
Ⅱ.運行容器,端口映射

? 參考:

? docker的基本命令

? Linux命令行選項單橫線“-”與雙橫線“–”的區別

docker run -it --name php-7.4-cli -p 80:80 php:7.4-cli-alpine sh

? docker run

? 👉關于docker run it 的 it

? 👉docker run命令參數及使用(含例子)

根據這些參數的解釋,那么上面那個docker run命令的意思大概就是:

使用鏡像php:7.4-cli-alpine 以交互模式啟動一個容器,將容器的80端口映射到主機的80端口,并將容器命名為php-7.4-cli

至于上面的sh,是指linux的sh命令嗎?我還沒確定,不過我瞎查了一通…感覺和bash差不多

?

? 簡書文章:/bin/bash和/bin/sh的區別

?

?

查看容器

參考文章:創建新Docker容器時出現“The container name “/xxx” is already in use by container xxxxxxxxxxx…”問題的解決辦法

? 如果在容器沒有移除之前,使用兩次這種命令:docker run -it --name php-7.4-cli -p 80:80 php:7.4-cli-alpine sh,就會拋出already in use 的錯誤

  • 查看鏡像
docker images

  • 查看容器

    • 查看所有容器(包括停止狀態的)

      docker-ps-a

      ? exited是指非運行狀態

    • 查看當前運行的容器

      docker ps
移除容器

? 移除容器之前要先停止正在運行的容器,參考:You cannot remove a running container

docker stop 容器的ID docker rm 所要移除容器的ID(CONTAINER ID)

此時再次使用docker ps -a就能看到對應的容器已經被移除

Ⅲ.進入PHP交互模式

? 啊突然發現之前好多次沒反應是因為…沒加分號

Ⅳ.利用Linux的vi編輯器
  • 先退出剛剛的php交互環境

  • 然后按照這個步驟來:

? 鏈接:Linux cd命令cd、 cd ~、cd /、cd…/、cd /home講解

? Linux vi命令(vi編輯器)30分鐘入門教程

Ⅴ.瀏覽器實現Hello PHP
  • 輸入指令
php -S 0.0.0.0:80

  • 在瀏覽器中訪問虛擬機IP

    輸入localhost或者127.0.0.1或者127.0.0.1:80

  • 或者重新打開一個WSL2窗口,使用curl命令

    ? 不要把php -S那個中斷掉,否則訪問不了

    ?

    ? 關于curl命令

? 會有記錄:

可以加入CSS樣式
vi index.php
  • 進入頁面

  • 進行修改,按i進入插入模式

    <?php echo "<h1 style='color:red'>hello PHP!</h1>";?>
  • 按esc,輸入:wq回車退出并保存

  • 重新開啟服務

php -S 0.0.0.0:80

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-kJpjbSA2-1630650398145)(https://cdn.jsdelivr.net/gh/xin007-kong/picture_new/img/20210903114838.png)]

  • 重新訪問

③Hello PHP(HTTP服務器方式)

? 參考:Windows訪問WSL里的Apache服務

Ⅰ.拉取apache鏡像
docker pull php:7.4-apache
Ⅱ.運行容器,端口映射
mkdir html #在虛擬機里新建一個html文件夾 cd html docker run -d --name php-7.4-apache -p 8000:80 -v "$PWD":/var/www/html php:7.4-apache
Ⅲ.創建index.php,訪問localhost:8000

在沒有創建index.php之前就去訪問,會出現這個:

? 我查了好多資料說去修改apache的配置文件,但我在WSL2上一直找不到網上那些在Linux系統里說的路徑,差點以為沒救了…

? 然后創建了個php文件…發現可以訪問!

  • 這時我用docker stop +這個容器的ID,就可以停止,這時候訪問localhost:8000
  • 再使用docker start,就又可以訪問了

總結

以上是生活随笔為你收集整理的WSL2配置docker和PHP的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。