Docker 学习笔记

来源:互联网 发布:物品寄存服务 知乎 编辑:程序博客网 时间:2024/06/03 16:04

首先明确docker中的几个概念:

1、镜像(image)
镜像是一个轻量级的可执行的文件包,包括运行软件所需的一切环境,docker镜像是docker容器运行时的只读模板,每个镜像由一系列的层组成

2、容器(container)
容器是用来运行程序的,每一个容器实际上就是一个实例化的镜像文件,每个容器之间都是相互隔离的

3、仓库
仓库是用来用来保存镜像的,类似于GitHub中的仓库,仓库分为共有和私有,共有仓库中由各种镜像


一、构建docker应用程序

1、创建一个空文件夹,用来存放你的项目,此处举例,mkdir test
2、进入到此文件夹中,创建两个必要文件,requirements.txt和Dockerfile,requirements.txt用来写运行程序所必要的包,Dockerfile将定义容器内部环境,在Dockerfile中写入以下代码:

# Use an official Python runtime as a parent imageFROM python:2.7-slim# Set the working directory to /appWORKDIR /app# Copy the current directory contents into the container at /appADD . /app# Install any needed packages specified in requirements.txtRUN pip install -r requirements.txt# Make port 80 available to the world outside this containerEXPOSE 80# Define environment variableENV NAME World# Run app.py when the container launchesCMD ["python", "app.py"]

3、创建一个镜像
docker build -t friendlyhello .
可以看到docker在下载各种包

4、运行应用程序
docker run -p 4000:80 friendlyhello 即可
这里docker默认的是80端口,这条命令将端口改成4000端口
此条命令之后你的应用就运行起来了

5、在浏览器中输入http://localhost:4000即可访问你的网页

6、结束后CTRL+C结束

7、后台运行程序
docker run -d -p 4000:80 friendlyhello

8、docker container ls 可以查看容器ID

9、docker stop id可以结束容器


二、发布docker
1、首先登陆docker账户docker login
2、标记镜像
docker tag image username/repository:tag
tag是可选的,但是建议选有意义的比如版本等信息
3、最后发布镜像
docker push username/repository:tag
发布之后这个镜像就是公开的了,任何人都可以下载
4、现在你可以在任何及其上使用
docker run -p 4000:80 username/repository:tag
命令来运行你的程序
5、

原创粉丝点击