顯示具有 keyword-docker 標籤的文章。 顯示所有文章
顯示具有 keyword-docker 標籤的文章。 顯示所有文章

2018/01/29

如何在 ubuntu/macOS/raspbian 下安裝 docker compose



隨著進入了 docker 的世界,碰到愈來愈多東西

終於用上了 docker compose

不過常常在新系統安裝好 docker 後會發現不能使用 docker-compose

原來這個東西是要另外安裝的

依據[官方](https://docs.docker.com/compose/install/#install-compose)的文件

以下範例適合 ubuntu/macOS

```sh
# 下載
$ sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# 加上執行權限
$ sudo chmod +x /usr/local/bin/docker-compose
```

這樣就可以盡情的使用 docker-compose up 了


如果是在樹莓派 raspbian 下的話就比較麻煩了

這邊提供用pip安裝的方法

```sh
# 安裝 pip
$ sudo apt-get install python-pip
# 或 pip3
$ sudo apt-get install python3-pip

# 利用 pip 安裝 docker-compose
$ sudo pip install docker-compose
# 或 pip3
$ sudo pip3 install docker-compose

# 跑完就可以使用了
$ docker-compose -v
docker-compose version 1.18.0, build 8dd22a9
```

參考:

https://github.com/docker/compose/

https://docs.docker.com/compose/install/

https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-ubuntu-16-04

2016/09/26

docker nginx reload



根據[官方blog](https://blog.docker.com/2015/04/tips-for-deploying-nginx-official-image-with-docker/)

當 nginx 設定檔更動時, 你不能直接執行 nginx reload, 但幸好 nginx 支援特定 signal 去做 reload

/etc/init.d/nginx reload
```sh
sudo docker kill -s HUP
```


/etc/init.d/nginx restart
```sh
sudo docker restart
```

2016/07/18

docker 解決 container mount檔案



目前在操作 docker 上會遇到一個問題:
mount 某個檔案或某的目錄到 container 上後修改 host 上的擋案後 container 對應的擋案不會跟著變動

docker container 預設加入 host 至 /etc/hosts




從 docker v1.3.1 起
docker支援了 --add-host 的參數可以再啟動時加入私有主機別名設定 (/etc/hosts)
可參考 https://docs.docker.com/v1.8/reference/run/#network-settings

我們只要再docker啟動時加入 --add-host $NAME:$IP
例如:

docker run -itd --restart=always --name lol_backend -p 80:80 -p $22:22 --add-host db:10.10.10.1 lol_backend


有多筆就加多個囉

docker run -itd --restart=always --name lol_backend -p 80:80 -p $22:22 --add-host db:10.10.10.1 --add-host db2:10.10.10.2 lol_backend