基础
下载
docker-for-mac[https://hub.docker.com/editions/community/docker-ce-desktop-mac]
安装
open docker.dmg
基础命令
1 | docker images |
新建一个最简单的 docker
touch Dockerfile
Dockerfile:
1 | FROM alpine:latest |
docker build
-t 命名
1 | ➜ d1 docker build -t hello_docker . |
docker images
1 | ➜ d1 docker images |
运行
1 | ➜ d1 docker run hello_docker |
创建简单 nginx
touch Dockerfile
1 | FROM ubuntu |
docker build -t xbf/hello-nginx .
docker run -d -p 80:80 xbf/hello-nginx //-d 进程守护,第一个 80,本机端口, :80 docker 端口
检测:
1 | ➜ d2 curl http://localhost //缺省80端口 |
Dockerfile 语法\
命令 | 用途 |
---|---|
FROM | base image |
RUN | 执行命令 |
ADD | 添加文件 |
COPY | 拷贝文件 |
CMD | 执行命令 |
EXPOSE | 暴露端口 |
WORKDIR | 指定路径 |
MAINTAINER | 维护者 |
ENV | 环境变量 |
ENTRYPIOINT | 容器入口 |
USER | 指定用户 |
VOLUME | mount point |
以 nginx 的名字运行(-v?-d?)
docker run -d –name nginx -v /usr/share/nginx/html xbf/hello-nginx
检查:
docker inspect xbf/hello-nginx
存储-volumes
1 | ➜ docker create -v \$PWD/data:/var/mydata --name data_container ubuntu |
挂载成功
ctrl+D 退出容器
镜像仓库-Registry
术语
English | 中文 |
---|---|
host | 宿主机 |
image | 镜像 |
container | 容器 |
registry | 仓库 |
daemon | 守护程序 |
client | 客户端 |
$ docker search whalesay
$ docker pull whalesay
1 | ➜ data docker run docker/whalesay cowsay hahaha! |
$ docker push myname/whalesay
国内仓库:
daocloud
时速云
aliyun
docker-compose
多容器 app
docker.yaml
常用命令:
|命令|用途|
|build|本地创建镜像|
|command|覆盖缺省命令|
|depends_on|连接容器|
|ports|暴露端口|
|volumes|卷|
|images|pull 镜像|
compose 命令
|命令|用途|
|–|–|
|up|启动服务|
|stop|停止服务|
|rm|删除服务器中的各个容器|
|logs|观察各个容器的日志|
|ps|列出服务器相关的容器|