Docker 镜像python
Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建以后也不会被改变。git
Docker 容器docker
镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的 类 和 实例 同样,镜像是静态的定义,容器是镜像运行时的实体。容器能够被建立、启动、中止、删除、暂停等。bash
Docker Registry服务器
镜像构建完成后,能够很容易的在当前宿主机上运行,可是,若是须要在其它服务器上使用这个镜像,咱们就须要一个集中的存储、分发镜像的服务,Docker Registry 就是这样的服务。一个 Docker Registry 中能够包含多个仓库(Repository);每一个仓库能够包含多个标签(Tag);每一个标签对应一个镜像。less
# 查看 docker 版本 docker version # 查看docker系统的信息 docker info # 日志信息 docker logs # 查看指定镜像日志(id 为容器 id 或 tag) docker logs id # docker 镜像状态检查 service docker status # 启动关闭docker sudo service docker start|stop # 列出全部的container docker ps -a # 用一行列出全部正在运行的container(容器多的时候很是清晰) docker ps | less -S # 列出最近一次启动的container docker ps -l # 删除单个容器 docker rm Name/ID # 删除全部容器 docker rm `docker ps -a -q` # 中止、启动、杀死、重启一个容器 docker stop Name/ID docker start Name/ID docker kill Name/ID docker restart name/ID # 列出镜像 sudo docker images -a, –all=false Show all images; –no-trunc=false Don’t truncate output; -q, –quiet=false Only show numeric IDs # 从dockerhub检索image docker search image_name # 下载image docker pull image_name # 删除一个或者多个镜像 docker rmi image_name -f, –force=false Force; –no-prune=false Do not delete untagged parents # 显示一个镜像的历史 docker history image_name # 发布docker镜像 docker push new_image_name docker push dockerhub.yourdomain.com:443/hello.demo.kdemo:v1.0 拉取docker镜像 $docker pull image_name # 保存对容器的修改 docker commit # 保存某个容器成为一个镜像 docker commit -a "user" -m "commit info" [CONTAINER] [imageName]:[imageTag] # 推送一个容器到中心仓库 docker login --username=[userName] --password=[pwd] [registryURL] ## 建议登陆后查看 docker info docker tag [imageID] [remoteURL]:[imageTag] docker push [remoteURL]:[imageTag] # 拉取提交的容器 docker pull [remoteURL]:[imageTag] # 对比容器的改动 docker diff # 附加到一个运行的容器上 docker attach
harbor.company.com/company/ 为公司的 docker 远程仓库地址,「test_object:0.2.3.dev1」为 工程名:版本号dom
docker exec -it e493d4e65146 bashui
cd /lib64/python3.4/site-packages/test_objectspa
example:操作系统
test_object 本地代码提交至test_for_delay分支
到某机器对应的 project 的里 git pull,好比到/tmp/test_object下pull代码
cd docker后执行命令:
ls test_object/dist | tail -n 1
经过docker images|grep test_object 获取
开始build:
在 a 环境执行:
在 b 环境执行:
在m环境检查:docker images
参考资料: