Ubuntu 22.04でDockerCompose、Nginx、SSLを使用してOdoo15をインストールします。 このチュートリアルでは、DockerとDocker Composeを使用してOdooをインストールおよびセットアップし、NginxとLet’s Encrypt SSLを構成し、PostgreSQLをインストールする方法を学習します。 Docker Composeを使用してOdooをインストールするのは、手動でインストールするよりも簡単な方法です。
Odooは、一流のユーザーエクスペリエンスでビジネスを運営するための管理セルフホストソフトウェアです。 Odoo内のアプリケーションは互いに完全に統合されているため、ビジネスプロセスを簡単に完全に自動化できます。
前提条件
- Ubuntu22.04にDockerをインストールします
- DockerComposeをUbuntu22.04にインストールします。
上記のすべての手順を完了していることを確認してください
- サーバーのIPアドレスを指すドメイン
- Dockerがインストールおよび構成されている
- DockerComposeがインストールおよび構成されている
ステップ1:プロジェクトディレクトリを作成する
サーバーにSSHで接続し、次の名前の新しいプロジェクトディレクトリを作成することから始めます。 odoo-project。 必要に応じて名前を付けることもできます。
mkdir odoo-project
ステップ2:DockerComposeYAMLファイルを作成する
次に、プロジェクトディレクトリ内を移動し、次の構成で新しいdocker-compose.ymlファイルを作成します。
cd odoo-project
nano docker-compose.yml
次の構成を貼り付けます。
version: '3.9'
services:
odoo:
container_name: odoo
image: odoo:15.0
volumes:
- ./addons-extra:/mnt/extra-addons
- ./etc/odoo:/etc/odoo
- odoo-web-data:/var/lib/odoo
ports:
- "8069:8069"
depends_on:
- postgres
postgres:
image: postgres:14
environment:
- POSTGRES_DB=postgres
- POSTGRES_PASSWORD=odoo
- POSTGRES_USER=odoo
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- odoo-db-data:/var/lib/postgresql/data/pgdata
nginx:
container_name: nginx
image: nginx:latest
restart: unless-stopped
ports:
- 80:80
- 443:443
volumes:
- ./nginx/conf:/etc/nginx/conf.d
- ./certbot/conf:/etc/nginx/ssl
- ./certbot/data:/var/www/html
certbot:
container_name: certbot
image: certbot/certbot:latest
command: certonly --webroot --webroot-path=/var/www/html -- email [email protected] --agree-tos --no-eff-email -d domain.com -d www.domain.com
volumes:
- ./certbot/conf:/etc/letsencrypt
- ./certbot/logs:/var/log/letsencrypt
- ./certbot/data:/var/www/html
volumes:
odoo-web-data:
odoo-db-data:
打つ CTRL + X に続く Y と Enter ファイルを保存して終了します。
構成の詳細は次のとおりです。
- バージョン:Dockerエンジンと互換性のあるファイルバージョンを作成します。 互換性を確認できます ここ。
- サービス:ここに4つのサービスがあります
odoo、postgres、nginxとcertbot。 - 画像:最新のOdoo 15、Postgres14を使用しています Nginx と Certbot Dockerハブで利用可能なイメージ。
- ボリューム:
nginx/conf:ここでは、コンテナー内のデフォルトのNginxconf.dフォルダーと同期するNginx構成ファイルを配置します。etc/odoo:ここでは、Odoo15データベース構成を配置します。cedtbot/conf:これはSSL証明書を受け取る場所であり、コンテナー内の目的のフォルダーと同期されます。ports:リストされたポートをリッスンするようにコンテナーを構成します。command:SSL証明書の受信に使用されるコマンド。
ステップ3:Odoo構成を作成する
これで、Oddoサービスのymlファイルに記載されているように、ディレクトリ内でカスタムOdoo構成を使用できます。
mkdir -p etc/odoo
名前の付いた新しいファイルを作成します odoo.conf
nano etc/odoo/odoo.conf
PostgreSQLの値に対応する強調表示された値を置き換えます。
[options] ; This is the password that allows database operations: ; admin_passwd = admin db_host = postgres db_user = odoo db_password = odoo
ここでは、PostgreSQLサービス名と同じホスト名を使用します。
ステップ4:Nginxを構成する
これで、Nginxサービスのymlファイルに記載されているように、ディレクトリ内にデフォルトの構成ファイルを作成できます。
mkdir -p nginx/conf
名前の付いた新しいファイルを作成します default.conf
nano nginx/conf/default.conf
次の構成を貼り付けて、適切な値をドメイン名に置き換えます。
server {
listen [::]:80;
listen 80;
location ~ /.well-known/acme-challenge {
allow all;
root /var/www/html;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_pass http://odoo:8069;
}
location ~* /web/static/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_pass http://odoo:8069;
}
}
ステップ5:Dockerを使用してOdooをデプロイする
これで、次のコマンドを使用して展開を行うことができます。
次のコマンドを使用してコンテナを起動します。コンテナが起動するとSSL証明書を受け取ります。
docker-compose up -d
すべてのコンテナが開始されると、SSL用の追加のディレクトリがあなたの横に作成されます。 docker-compose.yml ファイル。
ディレクトリ certbot SSL証明書に関連するすべてのファイルを保持します。
コンテナを表示するには、次のコマンドを実行できます。
docker-compose ps
ステップ6:DockerでOdooのSSLを構成する
Let’s Encrypt SSL証明書を受け取ったら、HTTPSを構成し、HTTPSへのリダイレクトを設定できます。
編集します default.conf 次の変更を行います。
sudo nano nginx/conf/default.conf
server {
listen [::]:80;
listen 80;
server_name domain.com;
return 301 https://www.domain.com$request_uri;
}
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
server_name domain.com;
ssl_certificate /etc/nginx/ssl/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/live/domain.com/privkey.pem;
return 301 https://www.domain.com$request_uri;
}
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
server_name domain.com;
ssl_certificate /etc/nginx/ssl/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/live/domain.com/privkey.pem;
location ~ /.well-known/acme-challenge {
allow all;
root /var/www/html;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_pass http://odoo:8069;
}
location ~* /web/static/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_pass http://odoo:8069;
}
}
次に、Nginxサービスを再起動して、新しい構成をロードします。
docker-compose restart nginx
ステップ7:Odooをセットアップする
これで、Webブラウザでドメイン名にアクセスできます。 以下のようなページが表示されます。 ここで、Odooのデータベースと管理者ユーザーを作成できます。
適切な値をすべて入力し、[データベースの作成]をクリックします。 これで、Odooを使用できるようになります。

結論
学ぶ Odooセールスアプリケーションの完全なウォークスルー 高度な構成を使用するためのヒントがあります。
これで、Docker Compose、Nginxを使用してUbuntu22.04にOdoo15をインストールし、Let’sEncryptを使用して保護する方法を学習しました。
御時間ありがとうございます。 問題やフィードバックに直面した場合は、以下にコメントを残してください。
The post Ubuntu 22.04でDocker、Nginxを使用してOdoo15をインストールします appeared first on Gamingsym Japan.