この記事の目的
「DBMSで何かしら確認したり作業したいが、サーバは構築するのは面倒」ということがよくあって、そういう場合によく使うDB起動ワンライナーをまとめたものです。
なおセキュリティなどの考慮はしていないので、本番環境などでは絶対に利用してはいけません。ローカル環境で使い捨てる程度の利用にとどめてください。
私的ワンライナー集
PostgreSQL (db: testdb, user: testdb, password: passw0rd)
docker run --rm -d \
-p 5432:5432 \
-e POSTGRES_USER=testuser \
-e POSTGRES_PASSWORD=passw0rd \
-e POSTGRES_DB=testdb \
postgres:13
MySQL (db: testdb, user: testdb, password: passw0rd)
docker run --rm -d \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=passw0rd \
-e MYSQL_USER=testuser \
-e MYSQL_PASSWORD=passw0rd \
-e MYSQL_DATABASE=testdb \
mysql:8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
SQLServer (user: sa, password: 1234@Hoge)
docker run --rm -d \
-p 1433:1433 \
-e ACCEPT_EULA=Y \
-e SA_PASSWORD=1234@Hoge \
mcr.microsoft.com/mssql/server:2019-latest
Oracle Database (db: testdb, user: system, passowrd: passw0rd)
- 前提: 以下の手順に従って、環境を構築していること
- OracleのDockerイメージは起動が重たいので、作成したコンテナを使いまわす
docker run -d \
-p 1521:1521 \
-p 5500:5500 \
-e ORACLE_PWD=passw0rd \
-e ORACLE_PDB=testdb \
oracle/database:19.3.0-se2
Db2 (db: testdb, user: db2inst1, password: passw0rd)
- Db2のDockerイメージは起動が重たいので、作成したコンテナを使いまわす
- 自分が利用しているGUIツールがDb2に対応していないので、以下のコマンドを実行して、CLIで接続する
docker exec -it <containerid> su - db2inst1 -c db2
connect to testdb user db2inst1 using passw0rd
docker run -d \
--privileged=true \
-p 50000:50000 \
-e LICENSE=accept \
-e DB2INST1_PASSWORD=passw0rd \
-e DBNAME=testdb \
ibmcom/db2:11.5.5.1