dockerを使用してOdooをインストールし、外部モジュールを追加する方法

記事では SME用のERPとCRMを設定するためのステップバイステップ Odoo 8が事前設定された仮想マシンを実行する方法を教えました。これにより、このERPを簡単かつ迅速に楽しむことができました。今回は、Dockerの世界に入り、この優れたテクノロジーを使用してOdooをインストールします。

基本的に、このチュートリアルでは、dockerを使用してOdooをインストールし、Odooの機能を改善および拡張できる外部モジュールを追加する方法を学習します。 dockerのおかげで、同じコンピューター上で任意のバージョンのOdooを実行でき、複数のインスタンスを実行できます。これにより、いつでも、どの組織でも、特にどの環境でも、開発と起動が容易になります。

手順は非常に簡単ですが、できるだけ詳細に説明します。手順と手順はUbuntu 16.04のディストリビューションに焦点を当てていますが、どのLinuxディストリビューションにも簡単に適用できます。

DockerとDockerComposeをインストールする手順

Dockerをインストールする

UbuntuにDockerをインストールするには、次のコマンドを実行するだけです。

sudo apt-get install docker.io

ユーザーをDockerグループに追加します

次のコマンドを実行する必要があります。

sudo gpasswd -a ${USER} docker

Docker-composeをインストールします

Docker-omposeをインストールする最も簡単な方法は、pipを使用することです。これを行うには、次のコマンドを実行します。

pip install docker-compose

Dockerエンジンをインストールします

次のコマンドを使用してdocker-engineをインストールします。

sudo curl -sSL https://get.docker.com/ | sh

Dockerを再起動します

すべての変更が適切に行われるようにするには、以下を使用してdockerを再起動すると便利です。

sudo service docker restart

docker-compose.ymlファイルを作成する

dockerをインストールしたら、ファイルを作成する必要があります docker-compose.yml 私たちの好みのディレクトリには、基本的にOdooでサービスを展開するために必要なすべての情報が含まれています。

nano docker-compose.yml

このファイルには、次のものが含まれます。

バージョン:「2」サービス:odoo:イメ​​ージ:odoo:8再起動:常にポート:-「8069:8069」リンク:-dbボリューム:-。/ extra-addons:/ mnt / extra-addons db:イメージ:postgres: 9.4再起動:常に環境:-POSTGRES_USER = odoo-POSTGRES_PASSWORD = odoo

このファイルでは、要件に合わせて次の変更を加えることができます。

  • image: odoo:8 :odoo:8を必要なバージョンに置き換えることができます。odoo:9、odoo:10、odoo11、または単にodoo:最新バージョンを使用できます。
  • ports: - "8069:8069" :最初のポートを必要なポートに置き換えます。これにより、odooの複数のインスタンスを同時に実行できます。たとえば、次のようになります。 ports: - "8070:8069"ports: - "8071:8069" 等々
  • image: postgres:9.4 :使用したいpostgresイメージを置き換えることもできます。特に、このバージョンは私に非常に適しています。

これと一般的に行 docker-compose.yml odooバージョンのコンテナやpostgresコンテナなど、相互に関連する一連のコンテナを呼び出します。同様に、最初のコンテナについては、ポート8069をリッスンする(そして、指定したコンテナにアクセスできるようになる)と述べています。さらに、エクストラアドオンと呼ばれるローカルボリュームがマウントされ、odooコンテナ内の/ mnt /エクストラアドオンと自動的にリンクします。

最後に、postgresに使用されるユーザー名とパスワードについて説明し、ホストコンピューターがdockerサービスを再起動すると、restart:alwaysパラメーターのおかげで再起動することも決定されます。

Odooの初期設定

作成したら docker-compose.yml、Odooインスタンスを起動する必要があります。これを行うには、ターミナルから、前に作成したファイルがあるディレクトリに移動して実行します。

docker-compose up -d

必要なドッカーコンテナのダウンロードが自動的に開始され、データベースが開始され、からodooインスタンスにアクセスできるようになります。 localhost:8069 または指定したポート。 その中に入ると、Odooを評価するためにテストデータをインポートするかどうかを選択することに加えて、電子メール、アクセスパスワード、言語、言語を選択する必要があるデータベースを作成する必要があります。

データベースが作成されると、odooにアクセスして、そのメリットを享受できるようになります。

Odooへの外部モジュールの追加

El docker-compose.yml 前の手順で作成したもので、必要なodooおよびpostgresイメージを作成するだけでなく、外部モジュールをインスタンスに追加できるように、ディレクトリにボリュームも作成します。 このためには、上記のディレクトリで実行したodooのバージョンと互換性のあるモジュールをコピーするだけで十分です。独自のモジュールを追加するか、からダウンロードできます。 Odooアプリ.

モジュールをextra-addonsディレクトリに配置したら(解凍)これは私たちがいるディレクトリにあります docker-compose.yml、ドッカーが読み取れるように、対応する権限を付与します。 簡単な方法は、エクストラアドオンの親ディレクトリにあるターミナルから次のコマンドを実行することです。

sudo chown -R lizard:lizard extra-addons /#lizardをユーザーに置き換えますsudochmod -R 755 extra-addons /

ここで、odooのインスタンスから、開発者モードをアクティブ化する必要があります。これは、使用しているodooのバージョンに応じて、次のように実行できます。

Odoo8で開発者モードをアクティブにする

Odoo 8の開発モードは、ユーザープロファイルからアクティブ化されます。このため、メニューから[ユーザー]カテゴリにアクセスし、管理者ユーザーを見つけて、右下の部分で特性をアクティブ化します。

odoo8の開発者モード

Odoo9で開発者モードをアクティブにする

Odoo 9で右上に移動し、ユーザーのプロフィール写真の横にある日付をクリックしてから、[バージョン情報]オプションに移動し、開いたウィンドウで[ 開発者モードをアクティブにします。

odoo9の開発者モード

Odoo10およびOdoo11で開発者モードをアクティブ化する

Odoo 10および11で開発者モードをアクティブにするには、[設定]メニューに移動し、右下にあるをクリックする必要があります。 開発者モードをアクティブにする.

odoo10の開発者モード

odoo11の開発者モード

最後に、どのバージョンでも、ローカルモジュールまたはアプリのメニューに移動し、リンクをクリックしてモジュールのリストを更新する必要があります。その後、の記事で説明されているようにモジュールをインストールできます。 Odooにモジュールをインストールする方法.

Dockerにパッケージをインストールする

odoo(またはodoo自体の機能)に組み込みたいモジュールまたはユーティリティのいずれかが外部パッケージのインストールを必要とする場合があります。これは、dockerのおかげで非常に簡単に行うことができます。 docker exec これは、ドッカーコンテナでコマンドを実行できるようにするユーティリティです。

最初に知っておく必要があるのは、dockerインスタンスの名前です。これは、次のコマンドで実行されます。

docker ps

アプリケーションをrootとしてdockerにインストールするには、必要に応じて次のコマンドを実行する必要があります。

docker exec -u root odoo9_odoo_1 pip install xlsxwriter

どこ docker exec -u root odoo9_odoo_1  コマンドがodoo9_odoo_1インスタンスでrootとして実行されることを示します。 pip install xlsxwriterは、実行するコマンドになります。

最後に、docker-composerを操作するときに役立ついくつかのコマンドを共有したいと思います。

#dockerインスタンスのディレクトリから実行され、docker-composer stopを実行しているdocker-composeの場合#dockerインスタンスのディレクトリから実行され、docker-compose docker-composer start#すべてのコンテナを停止しますdocker stop $(docker ps -a -q)#すべてのdockerコンテナを削除しますrm $(docker ps -a -q)#すべてのdockerイメージを削除しますrmi $(docker images -q)

チュートリアルがお好みに合っていることを願っています。今後の記事で、Odooの使用方法とSMEでの構成方法を学び始めます。


記事の内容は、次の原則に準拠しています。 編集倫理。 エラーを報告するには、 ここで.

14コメント、あなたのコメントを残してください

コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ビル

    素晴らしいチュートリアルです。時間をかけて実践できるかどうか見てみましょう。OdooとDockerの両方が非常に興味深いようです。 今のところ、私はrstudioとselenium-firefox dockerを使用してWebスクレイピングを学習するかどうかを確認するのに忙しく、FromLinuxで調査する必要があります。

    1.    JSON

      セレンはこするためのものではなく、包むためのものです。 アルカロXDスクレーピングのみがデータの読み取り専用です。

      1.    Guille

        さて、私はWebからデータを読み取り、それを構造化されたXNUMXつまたは複数のテーブルに入れて後で処理する方法を学ぼうとしています。 ウィキペディアによると:
        Webスクレイピングは、ソフトウェアプログラムがWebサイトから情報を抽出するために使用する手法です。 通常、これらのプログラムは、HTTPプロトコルを手動で使用するか、アプリケーションにブラウザを埋め込むことにより、World WideWeb上での人間のナビゲーションをシミュレートします。
        データマイニングのラッパーは、特定の情報ソースのコンテンツを抽出し、それをリレーショナル形式に変換するプログラムです。[1] 多くのWebページには、構造化データ(電話ディレクトリ、製品カタログなど)が表示されます。 HTML言語を使用して人間が閲覧できるようにフォーマットされています。
        はい、テーブルで構造化された情報であるため、よりラッパーになる可能性があります。 それは非常に興味深いです。

  2.   ビスタ

    UbuntuMateを使用してRaspberrypiにインストールすることはできますか?

    1.    ラガルト

      可能であれば、少しの時間でこのテーマに関するチュートリアルを実行できるかどうかを見てみましょう。

      1.    ヘクター

        それは素晴らしいでしょう私はいくつかのPIがほこりを拾っています

        1.    ラガルト

          そして私はテスト用にXNUMXつ必要です🙁

  3.   匿名の

    スペイン語でダウンロードするにはどうすればよいですか? それで、アプリケーションはスペイン語であり、Windows用がある場合はどうなりますか?

    1.    ラガルト

      データベースを作成するときに、Windowsでも機能する場合は、好みの言語を選択できます(odooページからインストーラーがあります)

  4.   ビクター

    こんにちは、Raspberry pi 3にインストールして、Dockerスクリプトを実行しようとしています。
    ドッカーはupdを作成する

    次のエラーが発生します。

    エラー:マニフェストリストのエントリに、linux / armに一致するマニフェストがありません。

    ありがとう。

  5.   イエス

    チュートリアルはとても良いです、ありがとう、そして残りのインスタンスがどのようにインストールされるか、それは私にはあまり明確ではありません、あなたはdocker-compose.ymlファイルにもっと入れる必要があります、ありがとう

  6.   ブレイハン・ジャラミロ

    アドオンのパスを見つけるのを手伝ってくれませんか。私はMacを使用していますか? どうもありがとう

  7.   ゴンザロ

    エンタープライズバージョンをインストールするのはどうですか?

  8.   ダニーロ

    こんにちは、端末からプログラミングしているモジュールを更新する必要がある場合はどうなりますか?