環境
- macOS Catalina バージョン10.15.7 (19H2)
- Docker version 20.10.6, build 370c289
- docker-compose version 1.29.1, build c34c88b2
ディレクトリ構成
./
html/
index.html
docker.compose.yml
html/index.htmlファイルを作成する。
httpでアクセスできるように
docker-compose.ymlを以下のように編集する。
version: '3'
services:
web:
image: php:8.0-apache
ports:
- '80:80'
volumes:
- ./html:/var/www/html
コンテナを起動する。
$ docker-compose up -d
http:/localhost/にアクセスすると、html/index.htmlが表示される。
確認できたらコンテナを終了する。
$ docker-compose down
httpsでアクセスできるようにする
docker-compose.ymlを以下のように編集する。
version: '3'
services:
web:
image: php:8.0-apache
# ports:
# - '80:80'
volumes:
- ./html:/var/www/html
https-portal:
image: steveltn/https-portal:1
ports:
- '443:443'
links:
- web
restart: always
environment:
DOMAINS: 'localhost -> http://web:80'
STAGE: 'local'
コンテナを起動する。
$ docker-compose up -d
https:/localhost/ にアクセスできることを確認する。
※ 関連:macOSのGoogle ChromeでNET::ERR_CERT_INVALIDが出たときの対処法
確認ができたらコンテナを終了する。
$ docker-compose down
https://local.test/ でアクセスできるようにする
docker-compose.ymlを以下のように編集する。
version: '3'
services:
web:
image: php:8.0-apache
# ports:
# - '80:80'
volumes:
- ./html:/var/www/html
https-portal:
image: steveltn/https-portal:1
ports:
- '443:443'
links:
- web
restart: always
environment:
# DOMAINS: 'localhost -> http://web:80'
DOMAINS: 'local.test -> http://web:80'
STAGE: 'local'
/etc/hostsファイルを編集し、以下の行を追加する。
127.0.0.1 local.test
コンテナを起動する。
$ docker-compose up -d
https://local.test/ にアクセスできることを確認する。
確認ができたらコンテナを終了する。
$ docker-compose down
iPhoneから https://local.test/ にアクセスできるようにする
macにDNSをインストールする。
$ brew install squid
DNSを起動する。
$ brew services start squid
iPhoneの設定アプリを起動し、「Wi-Fi」→「ⓘ」→「プロキシを構成」を選択する。
「手動」を選択して、「サーバー」にmacのIPアドレスを、「ポート」に「3128」を入力する。
iPhoneのsafariを起動し、https://local.test/にアクセスできることを確認する。
以上。