序文 この記事では、docker-compose の構成をいくつか紹介します。これらを参考にして、独自の docker ベースの開発/運用環境の構成をまとめることができます。詳しい紹介を見てみましょう。 dockerとdocker-composeをインストールする dockerをインストールする curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun docker-compose をインストールする sudo curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose 専用ネットワークを作成する dockerネットワークを使用して、dockerソフトウェアが相互にアクセスできるように、専用の共通ネットワークme_gatewayを作成します。 docker ネットワーク me_gateway を作成します docker-compose デプロイ traefik
ドッカーの作成 これはtraefikを使用したdocker-compose.yml設定の例です。 このうち、マウントされている ./traefik.toml がその構成です。 マウントされたacme.jsonはLet's Encryptの設定です バージョン: '3' バージョン: '3' サービス: トラエフィック: 画像: traefik:1.7.4 コンテナ名: me_traefik ポート: - '80:80' - '443:443' - '8090:8090' ボリューム: - /var/run/docker.sock:/var/run/docker.sock - ./traefik.toml:/traefik.toml - ./acme.json:/acme.json ネットワーク: - ウェブゲートウェイ ネットワーク: ウェブゲートウェイ: 外部の: 名前: me_gateway トラエフィック 詳細な設定の説明: http://docs.traefik.cn/toml#acme-lets-encrypt-configuration 以下は例です。検証の設定時に問題が発生した場合は、次の設定またはこの記事のコメントを参照してください。 ################################################################ # グローバル設定 ################################################################ # デバッグモードを有効にする # # オプション # デフォルト: false # デバッグ = false # ログレベル # # オプション # デフォルト: "ERROR" # ログレベル = "エラー" # エントリポイントを指定しないフロントエンドで使用されるエントリポイント。 # 各フロントエンドは独自のエントリポイントを指定できます。 # # オプション # デフォルト: ["http"] # デフォルトエントリポイント = ["http","https"] ################################################################ # エントリポイントの設定 ################################################################ # エントリポイントの定義 # # オプション # デフォルト: # エントリポイントの基本認証を有効にするには # ユーザー名/パスワードを2セット使用します: test:test と test2:test2 # パスワードは MD5、SHA1、または BCrypt で暗号化できます。htpasswd を使用してこれらのユーザー名とパスワードを生成できます。 # [エントリポイント] # [エントリポイント.http] # アドレス = ":80" # [エントリポイント.http.auth.basic] # ユーザー = ["test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/", "test2:$apr1$d9hr9HBB$4HxwgUir3HP4EsggP/QNo0"] # # エントリポイントのダイジェスト認証を有効にするには # ユーザー名/ドメイン/パスワードを 2 セット使用します: test:traefik:test と test2:traefik:test2 # htdigest を使用してこれらのユーザー名/ドメイン/パスワードを生成できます [entryPoints] [エントリポイント.http] アドレス = ":80" #[エントリポイント.http.リダイレクト] #エントリポイント = "https" [エントリポイント.https] アドレス = ":443" [エントリポイント.https.tls] [entryPoints.webentry] アドレス = ":8090" [エントリポイント.webentry.auth] [エントリポイント.webentry.auth.basic] ユーザー = ["テスト:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/"] ################################################################ # APIとダッシュボードの設定 ################################################################ # APIとダッシュボードを有効にする [API] ダッシュボード = true エントリポイント = "webentry" ################################################################ # Ping設定 ################################################################ # pingを有効にする [ピン] # 関連するエントリポイントの名前 # # オプション # デフォルト: "traefik" # # エントリポイント = "traefik" ################################################################ # Docker バックエンド構成################################################################################# # デフォルトのドメイン名を使用します。 # コンテナに「traefik.domain」ラベルを設定することで上書きできます。 # Dockerバックエンド構成を有効にする [docker] エンドポイント = "unix:///var/run/docker.sock" ドメイン = "yimo.link" ウォッチ = 真 デフォルトで公開 = false usebindportip = true swarmMode = 偽 ネットワーク = "me_gateway" [アクメ] メールアドレス = "[email protected]" ストレージ = "acme.json" エントリポイント = "https" オンデマンド = false onHostRule = 真 [acme.httpチャレンジ] エントリポイント="http" docker-composeはGogsをデプロイし、traefikを使用してドメイン名をバインドします mysqlでビルドしたい場合は、この設定を参照してください。 ドッカーの作成 バージョン: '3' サービス: メゴグス: 再起動: 常に 画像: ゴグス/ゴグス コンテナ名: me_gogs ボリューム: - ./データ:/データ - ./logs:/app/gogs/log ポート: - '10022:22' - '10080:3000' ラベル: - 'traefik.backend=me_gogs' - 'traefik.frontend.rule=ホスト:git.yimo.link' - 'traefik.enable=true' - 'traefik.protocol=http' - 'traefik.port=3000' ネットワーク: - ウェブゲートウェイ ネットワーク: ウェブゲートウェイ: 外部の: 名前: me_gateway 初期化中に、ドメイン名を0.0.0.0またはgit.yimo.linkに設定する必要があります。 つまり、./data/gogs/conf/app.iniの項目は ドメイン = git.yimo.link docker-compose デプロイ mysql 同じネットワーク上で、me_mysqlを使用して直接接続できることは注目に値します。 ドッカーの作成 バージョン: '3' サービス: 私のMySQL: イメージ:mysql:5.7.21 コンテナ名: me_mysql ボリューム: - ./data:/var/lib/mysql ポート: - '3306:3306' 環境: -MYSQL_ROOT_PASSWORD=ルート ネットワーク: - ウェブゲートウェイ ネットワーク: ウェブゲートウェイ: 外部の: 名前: me_gateway 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: CentOS7 は rpm パッケージを使用して mysql 5.7.18 をインストールします
>>: JavaScript はフロントエンド Web ページでカウントダウンを実装します
タイトルの通り、ページを修正すると以下のような状況が発生する可能性があります。現在、古いページを改修...
ウェブ上でチャートを描くための 9 つの優れた JavaScript フレームワーク スクリプト 1...
目次SQL ログを表示するにはどうすればいいですか? ? SpringMVC でのパラメータ渡しの説...
実装のアイデアまず、親コンテナーを作成し、2 つの順序なしリストを使用して、柔軟なレイアウトで親コン...
今日、最終プロジェクトに取り組み始めましたが、今年はMySQLデータベースを使用したため、Navic...
目次序文文章1. JavaScriptコードの実行プロセスに関連する概念2. 実行コンテキストと実行...
Docker で Zookeeper を素早くインストール会社を変わってから長らくZookeeper...
nginx の概要nginx は、無料のオープンソースの高性能 HTTP サーバーおよびリバース プ...
ステップ1: 現在のカーネルを表示する 読み取る $ uname -a Linux rew 4.15...
鉛Web ページ上の一般的な三角形の一部は、画像やフォント アイコンにする必要なく、CSS を使用し...
Redis の紹介Redis は完全にオープンソースで無料であり、BSD プロトコルに準拠しており、...
最初のステップは、アイコン作成ソフトウェアを準備することです。まず、いわゆるアイコンは拡張子 .ic...
MySQL 外部キー制約の無効化と有効化: MySQL 外部キー制約が有効になっているかどうかは、グ...
この記事では、ソーシャル ウェブサイトのホームページを比較分析することで洞察を得て、ソーシャル ウェ...
この章では、dockerの下にあるSpring BootプロジェクトでRedisを操作し始めます。準...