May 8, 2021 • ☕️ 3 min read
オープンソースアプリケーションのテーブル定義書を出力して遊んでみよう! odoo編。
ちなみにodooは、オープンソースのERPアプリケーション。
Pythonで作られてる。
Docker イメージが公式から配布されているので、そっちを使う事にします。
postgres の項目に、以下を追加。
ports:
- "5432:5432"
コンテナ起動後、以下の URLにログイン。
http://localhost:8069
適当に初期設定をしてみる
Database Name : odoo
Password : aaa123bbb456
「Create Database」ボタンを押下。
その後、「odoo」というデータベース名で接続ができるようになる。
PostgreSQL のクライアントツールを使ってアクセスができるようになりました。
いつも通り tbls を使ってアクセスしようとしてみたところ、上手くいかず。
エラーメッセージは、こんな感じ。
pq: SSL is not enabled on the server
SSL が適用されていればOKらしい。
コンテナの中に入ってごちゃごちゃやりたくなかったので、docker-composer.yml を編集して何とかできないか、試してみる。
参考サイト
https://github.com/bitnami/bitnami-docker-postgresql/issues/255
environment:
POSTGRESQL_PASSWORD: password123
POSTGRESQL_ENABLE_TLS: 'yes'
POSTGRESQL_TLS_CERT_FILE: /opt/bitnami/postgresql/certs/server.crt
POSTGRESQL_TLS_KEY_FILE: /opt/bitnami/postgresql/certs/server.key
POSTGRESQL_TLS_CA_FILE: /opt/bitnami/postgresql/certs/ca.crt
イメージを bitnami/postgresql:latest に変更して、オプションを記述。
・・・が、上手くいかず。
エラ〜メッセージ、こんな感じ。
dial tcp [::1]:5432: connect: connection refused
というか
http://localhost:8069/
に、何も表示されない。
闇が深そうなので、docker を触って何とかする方法は、いったん置いておく。
ssl 無効モードで接続できればよいのでは?
と考えてマニュアルを読むも、見つけきれず。
が、こんな issue があった。
https://github.com/k1LoW/tbls/issues/300
I thought adding more information on connection PostgreSQL is better. when using SSL mode the config like below :
# DSN (Database Source Name) to connect database dsn: postgres://dbuser:dbpass@localhost:5432/dbname?sslmode=disable
全く同じ所で詰まっている人が居た。
「pull request wanted」のラベルが貼ってあるので、これはオープンソースへの貢献のチャンス。
Go は使う動機がそんなに無かったので、ちょうど良かった。
というわけで、まずは Go の環境を作って、試しに触ってみるところからやってみまっす。
(追記。出力できました。)
オープンソースアプリケーションのテーブル設計書を出力して遊んでみよう!:odoo編 part 2(達成)