Skip to content

Mirochiu/docker-compose-php-mariadb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP-Apache-MariaDB for Development

所提供的環境

  • Apache啟用TLS 1.2以上的安全連線模式
  • MariaDB啟用了SSL/TLS雙向安全連線模式, Client端須提供憑證才能連線

使用前須知

  1. 請先安裝opensslmkcert
  2. 需要使用certs/gencerts.sh生成私鑰與憑證才能啟動此環境
  3. certs/gencerts.sh需要本機有bash並安裝openssl才能生成, 如果有遭遇問題請提issue, 感恩!
  4. 關於DB的帳號密碼, 請先寫在.env檔案內再啟動環境
  5. 由於環境使用docker-compose請先在本機安裝好
  6. 此環境設定為+8時區

基本操作

  1. 進入本專案根目錄
  2. 背景啟動環境 docker-compose up -d
  3. 關閉環境 docker-compose down
  4. 本機瀏覽器開啟網頁 http://localhost:3000

如果網頁需要使用SSL

  1. mineap.localhost將/etc/hosts加入本機DNS echo "127.0.0.1 mineap.localhost" >> /etc/hosts
  2. 本機瀏覽器開啟網頁 https://mineap.localhost:3001

DB操作

  • 本機mysql client想連入MariaDB mysql -h localhost -P 3306 -u ap -p 雖然環境啟用了SSL/TLS雙向安全溝通模式,但是MariaDB官方image的預設使用者並不會套用這個設定,所以還是可以直接連入

  • 本機想用MariaDB的root帳號 無法本機連入時使用root帳號,因為我在MariaDB有設定了一般使用者帳號;但是你可以進入container內使用mysql client登入root帳號

    1. docker exec -it backend-db bash
    2. mysql -u root -p
  • 設定使用者為雙向溝通模式 以預設使用者ap舉例

    1. 使用root帳號連入MariaDB
    2. 修改登入方式成x509憑證登入 ALTER USER 'ap'@'%' REQUIRE X509;

php程式碼

請直接編修src中的程式碼再刷新網頁

Troubleshooting

啟動環境時總是說失敗

  1. 確認你的本機port沒有佔用3000和3306;或是不會確認佔用狀態,就請改變一下docker-compose.yml內的port設定
  2. 請將你的錯誤訊息截圖丟issue,我再確認一下少了什麼

About

development environment for PHP-Apache-MariaDB

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published