備忘録
VagrantとVirtual Boxでの環境構築はできなかったため、諦めてDockerで環境を構築致しました。
Docker compose up -dコマンドで環境を構築すると、なぜかコンテナへのログインを求められるようになってしまい、抜け出すことができない事象が発生しました。
また、ログイン情報も持っていないため、永遠にコンテナにログインすることもできません。
そのため、一度teratermを使って、外部からログインを試みました。
これにより各種dockerコマンドも打つことに成功しました。
そして、ホストとなるwindows環境のブラウザから、GitLabにアクセスすることができました。
接続方法
別件でネットワーク周りの設定をいじっていましたら、GitLabへアクセスすることができなくなりました。
GitLabもそうですけれど、ホストサーバー(お家のWindows PC)からHyperVで作成したサーバーへアクセスすることができませんでした。
結論としましては、IPアドレスが変わっていたことが原因でしたので、HyperVでログインし、ifconfigでIPアドレスを確認し、teratermでログインすることができました。サーバーのIPアドレス以外にもいくつか表示されるのですけれど、どれがホストと繋がるIPなのか、判別する方法は分かりませんでしたので、どなたかご存知の方いましたら、教えていただけるととても嬉しいです。
余談ですけれど、dockerのコンテナの中でifconfigを実行するには、net-toolsをインストールする必要がございます。
以下のサイト様を参考にインストールさせていただきました。
以下がコマンドとなります。
-
nslookup/hostなどのコマンド
apt-get update && apt-get install -y dnsutils
-
ping/ifconfingなどのコマンド
apt-get update && apt-get install -y iputils-ping net-tools
-
nc/netcatコマンド
apt-get update && apt-get -y install netcat
-
tracerouteコマンド
apt-get update && apt-get install -y traceroute
Docker内でコマンドを実行するには以下の手順を踏むことで可能となります。
まずはコンテナの名前を確認する必要がございます。以下のコマンドでNAMEカラムを確認致します。
docker ps
次にDockerコマンドを使って環境にログイン致します。
docker exec -it [サーバー名]
サーバーの役割
備忘録として、各サーバーの役割を記録させていただきます。
サーバー名 | ポート番号 | 用途 |
---|---|---|
client1 | 8082 | 本番環境(ketchup) |
client2 | 8083 | 本番環境(ketchup-nginx) |
client3 | 8084 | テスト環境(ketchup) |
client4 | 8085 | テスト環境(ketchup-nginx) |