Centos
1 | # 如果出现: See 'docker run --help' |
创建一个基础的 Docker image
- 创建文件夹,以及安装编译库
1 | # install 编译 c 程序的 gcc ... |
1 | // hello.c |
1 | # build |
- 简单的 Dockerfile
1 | # vim Dockerfile |
1 | # docker build |
1 | # 列出 docker 所有的 container |
构建一个 Docker 镜像
根据已有的image
创建一个新的image
,不提倡,创建image
的过程不透明1
2
3
4
5
6docker run -it centos
yum install -y vim && exit
docker container ls -a
# 构建成为一个新的 image
# docker commit <container name> <account id>/<new image name>
docker commit upbeat_minsky cvno/centos-vim
Dockerfile 语法
1 | FROM |
1 | WORKDIR /root # 没有会自动创建 |
CMD
/ENTRYPOINT
1 | FROM centos |
Docker debug
1 | docker run -it <build 镜像的临时 container> /bin/bash |
Example
1 | # app.py |
1 | FROM python:2.7 |
1 | # build |
exec
1 | # 进入容器 |
Docker Hub
通过Docker Hub
来自动构建镜像,推荐使用这种方式
上传image
- 登录
Docker
帐号docker login
docker push cvno/hello-world:latest
私有 registry
内部或者个人使用
服务器需要安装,并且5000
这个端口可以进行通信
1 | docker run -d -p 5000:5000 --restart always --name registry registry:2 |
1 | # 客户机 |
1 | # 服务端验证是否成功 push |
stress
一个压力测试的docker
的image
,build
一个命令行的程序
1 | apt-get install stress |
1 | FROM ubuntu |
资源限制
1 | docker run --memory=200M cvno/ubuntu-stress --vm 1 |