2021-09-05 22:37:06
M1 Macに買い替えたので手元の開発環境のためにmysqlコンテナを動かそうとしたら動かなかった。
エラーはこんな感じ。
runtime: failed to create new OS thread (have 2 already; errno=22)
goのエラーだったので、アーキテクチャの何かしらの問題で動いていないのだろうと推測。
とりあえずdocker hubを見て8.0.17より最新のバージョンを探してみると8.0.26の最新パッチバージョンまでリリースされているのを確認できた。
https://hub.docker.com/layers/mysql/library/mysql...
データベース
Docker
Docker Compose
MySQL
M1
2021-05-06 15:44:05
最近のアップデートでDocker CLIがDocker Composeをサポートするようになったらしい。
cf. docs.docker.com - Compose CLI Tech Preview
Tech Previewなのでまだプロダクションでの利用推奨されていないとのこと。
互換性についてはこちら。docs.docker.com - Compose command compatibility with docker-compose
Docker composeはpythonで実装されているが、今回はサポートされるDocker Composeはgolang製らしい。
cf. https:...
インフラストラクチャ
Docker
Docker Compose
2020-11-14 14:20:07
概要docker-compose.ymlのserviceの1つにenv_fileを指定し、環境変数を設定したが、サービスがbuildするコンテナ内(Dockerfile側)では参照できなかった。vueのアプリケーションをコンテナ内でnpmを使ってビルドしており、アプリケーション側でprocess.env.VUE_APP_API_ENDPOINTという形でアプリケーションのビルド時に環境変数を参照させたかった。
解決策docker-compose.ymlで指定するenv_fileやenvironmentといったキーはコンテナのビルド後に参照できるようになるため、それらのキーを利用するだけではコン...
インフラストラクチャ
Docker
Docker Compose
2020-06-07 11:25:58
概要GolangのアプリケーションをVPSでDocker-Composeを使って本番運用してみたかったので、トライしてみた。
環境実際に自分がトライした環境をまとめておく。
VPS(Conoha)
お名前ドットコム(ドメイン管理)
Docker Compose(本番とローカルの構成を別ファイルで構築)
Docker Machine(デプロイで使う)
Let's Encrypt(TLS/SSL)
Nginx(リバースプロキシ)
リポジトリサンプルをつくった。github - bmf-san/go-production-boilerplate
本番環境のサーバーではユーザー作成とかポー...
ポエム
Docker
Docker Compose
Golang
Let's Encrypt
Nginx
Docker Machine
VPS
2019-09-27 09:21:33
概要Docker Composeを使ってgolangのtest実行していたら、Operation not permittedというエラーに遭遇した。
対応Docker Documentation - runtaime-privilege-and-linux-capabilities
Dockerコンテナの特権設定をいじると解決する。
gobel_test_db:
container_name: "gobel_test_db"
build: ./docker/mysql
ports:
- "3305:3306"
volumes:
- m...
インフラストラクチャ
Docker
Docker Compose
Linux
linux capabilities
seccomp
2019-09-17 23:33:59
概要Dockerizeを使ってDocker Composeで起動するコンテナの順番を制御する方法についての覚え書き。
github.com - jwilder/dockerize
なぜDockerizeを使うのかDockerizeではなく、wait-for-it というピュアなbash scriptを使った方法も採用することもできる。
cf. Docker-docs-ja - Compose の起動順番を制御
Dockerizeを使う目的は複数コンテナを起動する際、コンテナの起動順を意図的に制御したいようなときである。
例えば、アプリケーション用のコンテナとテスト用のデータベースコンテナがあっ...
インフラストラクチャ
Docker
Docker Compose
Dockerize
2019-04-28 14:59:08
概要dockerでコンテナとイメージを削除してもvolumeが削除されていなくてちょいちょい忘れてハマるのでメモっておく。
普段は、docker-composeを使っている。
docker-compose builddocker-compose up -d
して、
docker rm **docker rmi **
という感じにお片付けしているのだが、どうやらマウントしているvolumeを削除するオプションがあったらしい。
対応ボリュームが残っているか確認。docker volume ls docker volume rm **
余談docker-composeでdocker-compose....
インフラストラクチャ
Docker
Docker Compose