Skip to content

Instantly share code, notes, and snippets.

@kkc
Created December 1, 2015 12:30
Show Gist options
  • Save kkc/066384f16265c8e4302d to your computer and use it in GitHub Desktop.
Save kkc/066384f16265c8e4302d to your computer and use it in GitHub Desktop.
docker

Docker#

Basic

Build image

In the directory including Dockerfile

docker build -t image_name .

List images

docker images

List Containers

docker ps -a

Run container

sudo docker run -d --name container_name image_name

-d which means running a container in detached mode. -rm 不能跟 -d 一起使用,因為 detached mode 不會自動被清除(比較像 service 的 stop),in detach mode, we shouldn't use service x start, 用 detached mode, Job 都要 run 在前景。

-a Attach to STDIN, STDOUT and/or STDERR

-t Allocate a pseudo-tty

-it Run iterative mode

How to enter running Container

sudo docker exec -it container_name bash 

執行bash

docker attach container_name

attach 並不好用,會同時 attach 到同一隻 process

ctrl+p ctrl+q

離開 container

$ wget -P ~ https://github.com/yeasy/docker_practice/raw/master/_local/.bashrc_docker;
$ echo "[ -f ~/.bashrc_docker ] && . ~/.bashrc_docker" >> ~/.bashrc; source ~/.bashrc
echo $(docker-pid <container>)
$ docker-enter <container> ls

Network

sudo docker exec -i -t ss bash 執行bash

sudo docker run -d --name ss --link kms-moonrabbit:kms-moonrabbit umbocv/ss

sudo docker build -t umbocv/ss .

Docker Machine

Run 機器

sudo docker run -idt umbocv/ss

移除機器

docker-machine rm 

得到 IP

docker-machine ip

Docker machine 預設的 vm 太弱

docker-machine create \
--driver virtualbox \
--virtualbox-cpu-count 2 \
--virtualbox-memory 2048 \
dev

利用 reverse tunnel 的方式登入 docker vm

docker-machine ssh -L <host-port>:localhost:<machine-port>

清理

docker ps -aqf status=exited | xargs docker rm
docker images -qf dangling=true | xargs docker rmi

利用 docker-compose 去 run each service

docker-compose -f docker-compose.test.yml run

ref: http://dockone.io/article/797

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment