UbuntuでDockerインストールしたgogsは、サービスを時々再起動するとアクセスできなくなります。
2022-03-03 02:56:54
1. コンテナインスタンスの中に入る
docker exec -it XXXXXX bash
XXXXXXはContainerIDまたはNameです。
docker ps -a で確認できます。
例 docker exec -it gogs2020 bash
docker exec : Execute the command in the running container
-d :detached mode: run in the background
-i :keep STDIN open even if not attached
-t :assign a pseudo terminal
2. コンテナインスタンス内のログを見る
インストール時に設定したデータディレクトリは、コンテナの外でも見ることができますが、複数のインスタンスがある場合は、.............................です。そこで、インスタンス内から見るには
tail -f log/gogs.log
2020/11/09 02:45:27 [FATAL] [... .o/gogs/internal/route/install.go:75 GlobalInit()] Failed to initialize ORM engine: open database: Error 1045: Access denied for user 'root'@' 172.18.0.4' (using password: YES)
2020/11/09 02:45:28 [ INFO] Gogs 0.13.0+dev
2020/11/09 02:45:28 [FATAL] [.... .o/gogs/internal/route/install.go:75 GlobalInit()] Failed to initialize ORM engine: open database: Error 1045: Access denied for user 'root'@' 172.18.0.4' (using password: YES)
2020/11/09 02:45:29 [ INFO] Gogs 0.13.0+dev
2020/11/09 02:45:29 [FATAL] [.... .o/gogs/internal/route/install.go:75 GlobalInit()] Failed to initialize ORM engine: open database: Error 1045: Access denied for user 'root'@' 172.18.0.4' (using password: YES)
ご覧の通り、私の問題は docker を使ってインストールした mysql サービスにアクセスできないことです。
別の端末を開く
docker inspect XXXXX を実行します。
XXXXXXはコンテナIDまたは名前です。
例えば、docker inspect mysql2020では、mysqlの"IPAddress"が"172.18.0.5"になったことがわかります。
サービス再起動後にdockerがmysqlに割り当てるIPが変わっていることがわかったので、固定IPを設定するか、gogsの設定ファイルを修正します。
3. dockerインスタンスgogsの設定ファイルを修正します。
元の端末に戻る(コンテナインスタンス内 Step1)
cd /data/gogs/conf
vi app.ini
修正後
exit インスタンスを終了する
その後、インスタンスを再起動します。
時代へのオマージュ
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ハートビート・エフェクトのためのHTML+CSS
-
HTML ホテル フォームによるフィルタリング
-
HTML+cssのボックスモデル例(円、半円など)「border-radius」使いやすい
-
HTMLテーブルのテーブル分割とマージ(colspan, rowspan)
-
ランダム・ネームドロッパーを実装するためのhtmlサンプルコード
-
Html階層型ボックスシャドウ効果サンプルコード
-
QQの一時的なダイアログボックスをポップアップし、友人を追加せずにオンラインで話す効果を達成する方法
-
sublime / vscodeショートカットHTMLコード生成の実装
-
HTMLページを縮小した後にスクロールバーを表示するサンプルコード
-
html のリストボックス、テキストフィールド、ファイルフィールドのコード例