Docker朝花夕拾

之前很多篇文章写利用docker怎么做怎么做。
好像还真没有一篇介绍基本命令的。
但实践出真理。
有段时间没用这个,然后记忆有些模糊,还是记录下来,用来备查。
后面也会慢慢添加补充内容

基本用法用docker --help可以查看到。

下面就是要介绍自己之前忽略的和忘记的。

一些使用方式

docker run

  • -v 文件映射
  • -p 端口映射
  • -t 开一个终端
  • -i 标准输入打开
  • -d 让容器在后台运行
  • --rm 让容器运行完就删除

docker 给容器指定ip

  • 创建网桥: docker network create --subnet=172.18.0.0/16 ssnet
  • 指定IP: docker run -d --net ssnet --ip 172.18.0.10 xxx/xxx

在机器重启后,自动启动容器

  • docker update --restart=always <CONTAINER ID>
  • 可以在RestartPolicy这个属性中看到

docker 镜像地址配置

因为一些原因,国内下镜像特慢,所以需要配置国内docker镜像站点

Ubuntu 16.04+、Debian 8+、CentOS 7

/etc/docker/daemon.json中写入如下内容(如果文件不存在请新建该文件)

1
2
3
4
5
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}

  • http://hub-mirror.c.163.com网易镜像地址

之后重新启动服务。

1
2
sudo systemctl daemon-reload
sudo systemctl restart docker

当要以非root用户可以直接运行docker时,需要执行 sudo usermod -aG docker xxx,就是把xxx添加到docker组当中去。

docker 运行mysql

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

参考