目的
coldfusionの開発環境を作っておき、家でいろいろ試せるようにする。
また、今後coldfusionをはじめる人のローカルにお試しの環境をサクッと作れるようにする。
環境
coldfusionアップグレード5
手順
①coldfusionアップグレード5のイメージを探す
②docker-compose.ymlファイルを作成
※/html/以下はバインドマウントで、
ホストコンピュータからの変更が反映されるようにする。
③コンテナを起動
④ドキュメントルートにsample.cfmを置く
⑤サイトにアクセス
http://localhost:8500/sample.cfm
⑥管理画面にアクセス
http://localhost:8500/CFIDE/administrator/index.cfm
各作業抜粋
①coldfusionアップグレード5のイメージを探す
adobe公式のイメージがあるのですねぇ。
▼参考になるサイト探してみた
英語
https://helpx.adobe.com/coldfusion/using/docker-images-coldfusion.html
イメージファイルはここにあるっぽい。
下記のページの、"set me up"を押下すると、pullコマンドが確認できました。
https://bintray.com/eaps/coldfusion/cf%3Acoldfusion/2018.0.5#release
docker pull eaps-docker-coldfusion.bintray.io/cf/coldfusion:2018.0.5
②docker-compose.ymlファイルを作成
下記を参考にしながら
https://helpx.adobe.com/coldfusion/using/docker-images-coldfusion.html
version: '3'
services:
# coldfusionコンテナ
coldfusion2018:
image: eaps-docker-coldfusion.bintray.io/cf/coldfusion:2018.0.5
ports:
- 8500:8500 # ポートフォワード(ホスト側のポート8500をコンテナのポート8500に転送)
environment: # 環境変数
- acceptEULA=YES # EULAを環境変数に書きなさいとのこと
- password=admin # CF管理画面のパスワード
volumes:
- ./html:/app # バインドマウント(ドキュメントルートを
#"/docker-compose.ymlおいているディレクトリ/html"とする)
▼今回のポイントは、EULA(環境変数に許諾同意の記載が必要)
ソフトウェアの開発元と購入者の間で交わされる契約。
ソフトウェアの使用や複製、譲渡などについて購入者に許可あるいは禁止される行為や条件、
開発元による保証やサポート、責任の範囲、免責事項などが定められている。
③コンテナを起動する(私は、powershellで起動)
▼起動方法
# 対象コンテナのディレクトリへ移動(docker-compose.ymlおいている場所)
cd C:\Users\micro\desktop\docker\coldfusion
# コンテナを起動
docker-compose up -d
▼ちなみに停止方法はこちら
# 対象コンテナのディレクトリへ移動
cd C:\Users\micro\desktop\docker\coldfusion
# コンテナを停止
docker-compose down
④ドキュメントルートにsample.cfmを置く
<cfset title = "test sample.cfm">
<html>
<head></head>
<body>
<h1><cfoutput>#title#</cfoutput></h1>
</body>
</html>
⑤サイトにアクセス
http://localhost:8500/sample.cfm
⑥管理画面にアクセス
http://localhost:8500/CFIDE/administrator/index.cfm
※パスワードは、docker-compose.ymlで設定した"admin"
はまりポイント(私だけ?(笑))
①EULA記述必須やと思って記載したが、間違えて記載していた。
▼正解
environment:
- acceptEULA=YES
▼間違え
environment:
- acceptEULA:YES
最初、間違えのやり方をしていると、コンテナのエラーは全く表示されていないがlocalhostが表示されない状態。
下記のコマンドを投げると、EULAのエラーがあることがわかった。
次から何かあったら、これで状況を確認しよう。
docker-compose logs
②相変わらず、バインドマウントが効かないときがある。
docker>setting>share driveの”reset credential”で。
▼ファイヤーウォールに止められている場合はネットワークを許可
https://qiita.com/t20190127/items/3abb7c17acdc8543c8ad