インストール
sudo yum install docker
sudo groupadd docker
sudo usermod -aG docker tkobayas
基本
- sudo systemctl start docker
- (初めてのコンテナ) docker run ... で作る
- (持ってるコンテナ) docker ps -a でみつける
- docker start {コンテナーID}
コマンド
sudo systemctl start docker
sudo systemctl stop docker
docker pull {イメージ名}:{タグ名}
docker images
docker run [オプション] [--name {コンテナー名}] {イメージ名}[:{タグ名}] [コンテナーで実行するコマンド] [引数]
docker ps [-a]
docker stop {コンテナー名}|{コンテナーID}
docker start [-i] {コンテナー名}|{コンテナーID}
docker rm {コンテナー名}|{コンテナーID}
http://www.atmarkit.co.jp/ait/articles/1406/10/news031.html
docker exec -it {container-name-or-id} bash
Image
Oracle
https://hub.docker.com/r/arahman/docker-oracle-xe-11g/
How-To: Install and Use docker pull arahman/docker-oracle-xe-11g Run with 22, 1521 and 8080 ports opened: docker run -d -p 49160:22 -p 49161:1521 -p 49162:8080 arahman/docker-oracle-xe-11g /sbin/my_init Connect database with following setting: URL: jdbc:oracle:thin:@localhost:49161:xe hostname: localhost port: 49161 sid: xe username: system password: oracle Password for SYS oracle Connect to Oracle Application Express web management console with following settings: url: http://localhost:49162/apex workspace: INTERNAL user: ADMIN password: oracle Login by SSH ssh root@localhost -p 49160 password: admin
scp -P 49160 DB_export.zip root@localhost:
MySQL57
$ docker exec -it mysql57 bash
$ mysql -uroot -pmysql
PostgreSQL
docker pull postgres:9.6
docker run --name postgres96 -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d postgres:9.6
docker exec -it -u postgres postgres96 psql
SSH で入れない
Connection to localhost closed by remote host.
とりあえずこれだけ
sudo systemctl start docker
docker ps -a
docker start {コンテナーID}
Oracle
java.sql.SQLException: ORA-28001: the password has expired
が起きたら
- Eclipse plugin DBViewer
alter profile default limit password_life_time unlimited; alter user system identified by oracle; alter user system account unlock;
docker run しても exit になってる
docker events を別ターミナルで実行して監視しながら docker run
docker inspect {コンテナーID}
Oracle 12
https://hub.docker.com/u/tkobayas/content/sub-72bedece-75d1-4565-bd38-231c3db2e35e
ORA-65096: invalid common user or role name
-> CDB ではユーザを作れない
> show con_name;
CDB$ROOT
> select name, open_mode from v$pdbs;
ORCLPDB1
READ WRITE
> alter session set container = ORCLPDB1;
> show con_name;
ORCLPDB1
docker exec -it oracle12.2bash -c "source /home/oracle/.bashrc; sqlplus /nolog"
docker run -d -it --name oracle12.2 -P store/oracle/database-enterprise:12.2.0.1
docker exec -it oracle12.2 bash
jbds711 の oracle12c-docker でつながる
jdbc:oracle:thin:@localhost:32775/orclpdb1.localdomain
sqlplus sys/Oradoc_db1 as sysdba
connect sys/Oradoc_db1 as sysdba
create user bpms identified by oracle default tablespace users;
grant dba to bpms;
alter session set container = ORCLPDB1;
cd /u01/app/oracle/product/12.2.0/dbhome_1
cd network/admin/
ORCLCDB=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=
(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCLCDB.localdomain)))
ORCLPDB1=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=
(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCLPDB1.localdomain)))
imp bpms/oracle@ORCLPDB1 file=requestinfo.exp fromuser=xxx_bpms touser=bpms
lsnrctl service でリスナーの今の設定を
掃除
まずコンテナ削除
docker rm <container_id>
イメージ確認
docker images
イメージ削除
docker rmi <image_id>
場所移動
Docker Root Dir を /var/lib/docker から /foo/bar/docker へ変更する方法 - Qiita
Docker のイメージ・コンテナの格納場所の移動 - ネガティブログ
dockerで、pathの場所を、/var/lib/dockerから/mnt/foobar/に変更する方法 (Fedora版) - Qiita
トラブルシュート
Fedora 31 以降
ERROR: Service 'hello' failed to build: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown
- Run: sudo grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0"
- Then reboot
docker/docker-compose on RHEL 8
https://linuxconfig.org/how-to-install-docker-in-rhel-8
先に podman 等をアンインストールすれば、コンフリクトは防げる
enabled=0 にするとか
sudo vi /etc/yum.repos.d/docker-ce.repo