やりたいこと
Docker上にDBサーバーを立ち上げたい
docker-compose.yml
version: "3.9"
services:
sqlserver:
image: mcr.microsoft.com/mssql/server:2022-latest
container_name: sqlserver
hostname: sqlserver
ports:
- 1433:1433
volumes:
- ./sqlserver/startup.sh:/startup.sh
- mssql-db:/var/opt/mssql
environment:
MSSQL_PID: Express
MSSQL_LCID: 1041
MSSQL_COLLATION: Japanese_CI_AS
ACCEPT_EULA: Y
TZ: Asia/Tokyo
command: "sh -c '/startup.sh & /opt/mssql/bin/sqlservr;'"
azurite:
...
volumes:
mssql-db:
driver: local
azurite-data:
driver: local
発生したエラー
docker-compose up
を実行したところ以下のようにsqlserverが立ち上がらない...
最近使えるようになったらしい
もともとエラーになってて、つい最近のリリースでAppleシリコンにも対応したそうです。
設定
Dockerデスクトップの右上の設定ボタンをクリックして、「Features in development」を選択。
「Use Rosetta for x86/amd64 emulation on Apple Silicon」にチェックをつけてリスタート。
...
注意
Macのバージョンも13(Ventura)以上に上げる必要があります。
あげないと「Use Rosetta for x86/amd64 emulation on Apple Silicon」というチェック欄が出てこないので、アップデートすることを忘れずに。