投稿

ラベル(Docker)が付いた投稿を表示しています

AmazonSAMをローカル実行してMySQLに接続する

AmazonSAMをローカル実行してMySQLに接続する AmazonSAMをローカル実行してMySQLに接続する AmazonSAMのLambdaをローカルで実行する時は以下ですよね。 $ sam local start-api AmazonSAMって上記で自動的にDockerコンテナ起動してLambdaの実行環境を作ってくれます。 で、既にDockerでMySQLが起動してる場合、そのMySQLにLambdaから接続される方法でちょっと困ったんで手順残しときます。 Dockerネットワーク作成 AmazonSAMとMySQLでネッワークを共有させるためにネットワークを作ります。 作成 $ docker network create my-network 削除 $ docker network rm my-network MySQLで独自ネットワークを使わせる 作成したmy-network上でMySQLのコンテナを起動します。 直接コンテナ起動する場合は --network オプションを指定します。 $ docker run -e MYSQL_ROOT_PASSWORD=passw0rd -d -p 3306:3306 --network my-network mysql:8.0 docker-composeを使う場合はcompose.ymlを以下のように設定します。 version : '3.9' services : db : image : mysql : 8.0 environment : MYSQL_ROOT_PASSWORD : passw0rd TZ : 'Asia/Tokyo' hostname : db_host ports : - 3306 : 3306 networks : - my - network networks : my-network : external : true AmazonSAMで独自ネットワークを使わせる 以下のように --docker-network オプ...

PostgreSQLのDockerイメージにPLV8を適用

イメージ
PostgreSQLのDockerイメージにPLV8を適用 PostgreSQLのDockerイメージにPLV8の言語拡張を適用 PLV8 はPostgreSQL用のJavaScript言語拡張機能です。 ちょっと探してみたんですがPLV8適用済のDockerイメージがなかったんで作ります。 PostgreSQLのdocker環境作ります dockerfile-postgres FROM postgres:12.9 ARG DB_LANG=en_US RUN localedef -i $DB_LANG -c -f UTF-8 -A /usr/share/locale/locale.alias $DB_LANG.UTF-8 ENV LANG $DB_LANG.utf8 compose.yml version : '3.4' services : db : build : context : . dockerfile : ./dockerfile - postgres args : - DB_LANG=ja_JP container_name : postgres environment : POSTGRES_USER : "root" POSTGRES_PASSWORD : "passw0rd" POSTGRES_INITDB_ARGS : "--encoding=UTF-8" TZ : 'Asia/Tokyo' ports : - 0.0.0.0 : 5432 : 5432 hostname : postgres user : root docker起動します。 > docker-compose build > docker-compose up -d PLV8適用 > docker exec -it postgres /bin/bash # apt update # apt ...

VOICEVOXエンジンをDockerコンテナで動かす

イメージ
VOICEVOXエンジンをDockerコンテナで動かす SSS LLC. 四国めたん VOICEBOX を起動すれば http://localhost:50021 でエンジンのAPIにアクセスできます。 APIのドキュメントは http://localhost:50021/docs で表示されます。 独自アプリなんかで利用したい場合はエディタの部分は不要なのでエンジンだけDockerで起動できるようにしてみます。 VOICEBOXのエンジンはPython + FastAPI、オープンソースでGithubに公開されてます。 VOICEBOX ENGINE なのですがDockerイメージ( voicevox/voicevox_engine )が既に公式から公開されているのでそちらを使って動かします。 compose.yml を作ります。CPU版とGPU版がありますが今回はCPU版にしました。 version : '3.4' services : voicevox_engine : image : voicevox/voicevox_engine : cpu - ubuntu20.04 - latest container_name : voicevox_engine ports : - 50021 : 50021 動かします。 > docker-compose up http://localhost:50021/docs にアクセスすると動いてますね。 音声ファイルを生成してみます。 curlコマンドはWindowsだとちょっと面倒なのでWLS2のUbuntu上で実行します。 $ echo -n "こんにちは、音声合成の世界へようこそ" > text.txt $ curl -s -X POST "127.0.0.1:50021/audio_query?speaker=1" --get --data-urlencode text@text.txt > query.json $ curl -s -H "Content-Type: application/...