持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第6天,点击查看活动详情
整体了解
阮一峰Docker入门:www.ruanyifeng.com/blog/2018/0…
前端实践:zhuanlan.zhihu.com/p/39241059
官网文档:docs.docker.com/get-started…
安装实践
- 安装mac版本
- 启动get-started
- 实践里面的tutorial
- alpine 镜像-阿里:RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
- alpine镜像-中科大:RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
不错的书
Docker--从入门到实践: yeasy.gitbook.io/docker_prac…
命令
| 命令 | 功能 |
|---|---|
| docker images、 docker image ls | 查看镜像列表 |
| docker system df | 查看镜像、容器、数据卷所占用的空间 |
| docker image prune | 删除所有虚悬镜像 dangling image |
| docker run -t -i ubuntu:18.04 /bin/bash | 新建并启动容器 |
| docker container ls -a、docker ps -a | 查看所有容器 |
| docker container start | 启动容器 |
| docker container restart | 重启容器 |
| docker container rm | 删除容器 |
| docker rm $(docker ps -aq) | 删除所有容器 |
| docker exec -it bash | 进入容器终端 |
| docker export 7691a814370e > ubuntu.tar | 导出容器 |
| cat ubuntu.tar | docker import - test/ubuntu:v1.0 | 导入为镜像 |
| docker tag ubuntu:18.04 username/ubuntu:18.04 | |
| docker push username/ubuntu:18.04 | |
| docker search username | 查询用户名下的所有镜像(push第二天才有) |
| docker volume create my-vol | 创建一个数据卷 |
| docker volume ls | |
| docker volume inspect my-vol | |
| docker volume rm my-vol | |
| docker volume prune | |
| docker run -d -P nginx:alpine | 大P随机port |
| docker run -d -p 8888:80 nginx:alpine | 小p指定接口 |
| docker logs containerId/containerName | |
| docker network create -d bridge my-net | 创建网络 |
| docker run -it --rm --name busybox1 --network my-net busybox sh | 容器内:ping busybox2 |
| docker run -it --rm --name busybox2 --network my-net busybox sh | |
zsh docker命令补全
- vs ~/.zshrc
- plugins=(git docker docker-compose)
- 参见: github.com/ohmyzsh/ohm…
docker-machine
- docker-machine create --engine-registry-mirror hub-mirror.c.163.com --engine-opt dns=114.114.114.114 -d virtualbox manager
- docker-machine ssh manager
- docker swarm init
- 会有提示 加哪个ip --advertise-addr 192.168.99.100
- docker-machine create --engine-registry-mirror hub-mirror.c.163.com --engine-opt dns=114.114.114.114 -d virtualbox worker1
- docker-machine ssh worker1
- docker swarm join 复制上面manager的内容
docker-machine create -d virtualbox manager 各种报错
-
Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"
- 下载安装VirtualBox www.virtualbox.org/wiki/Downlo…
-
No default Boot2Docker ISO found locally, downloading the latest release... 下载报超时
-
hub.fastgit.org/boot2docker… 下载boot2docker.iso
-
放到/Users/ksyun/.docker/machine/cache
-
-
docker镜像源访问不了!
- 删除manager节点
- 重新创建 docker-machine create --engine-registry-mirror hub-mirror.c.163.com --engine-opt dns=114.114.114.114 -d virtualbox manager
- 进入节点 docker swarm init --advertise-addr 192.168.99.103 (ip要和docker-machine ls里的对应)
docker config
- 来管理服务的配置信息,我们只需在集群中的管理节点创建
config,当部署服务时,集群会自动的将配置文件分发到运行服务的各个节点中