Docker

Framework

Docker Hub

对于自动构建的项目,当前是使用了 Github 的基础授权,所以默认不会在 Push 的时候触发自动构建。需要在 Github 的项目设置中的 Integration&Services 中开启 Docker 服务。

Compose

本地可以用这个来快速建立一些测试环境。比如,我想要建立一个 PostgreSQL 的测试场景:

  1. 创建一个目录

    mkdir pgdemo
    
  2. 创建 docker-compose.yml

    server:
      image: postgres
      environment:
        POSTGRES_PASSWORD: thepasswd
    
    client:
      image: postgres
      environment:
        PGPASSWORD: thepasswd
      links:
        - server
      command: psql -h server -U postgres
      stdin_open: true
      tty: true
    

这样准备工作完成。

使用时,先运行 server:

docker-compose create server
docker-compose start server

运行 client:

$ docker-compose run --rm client
psql (9.6.0)
Type "help" for help.

postgres=#

就可以愉快的玩耍啦。

清理资源:

docker-compose stop server
docker-compose rm -f

Docker for Mac: connect to another service from a container

解决方案是给本机的 lo0 建立一个别名地址,然后在 container 里面链接这个别名地址:

sudo ifconfig lo0 alias 10.200.10.1/24
# then use 10.200.10.1 in your container

删除这个别名地址的方法如下:

sudo ifconfig lo0 -alias 10.200.10.1

see: https://docs.docker.com/docker-for-mac/networking/#/use-cases-and-workarounds

END

Published @ Aug 15, 2017