from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return "hello docker"
if __name__ == '__main__':
app.run()
复制代码
Dockerfile
ROM python:3.6
LABEL "maintainer=jeffzzz <wxl.pure@gmail.com>"
RUN pip install flask
COPY app.py /app/
WORKDIR /app
EXPOSE 5000
CMD ["python", "app.py"]
复制代码
$ docker build -t jeffzzz/flak-demo .
复制代码
如果提示没有权限,就需要登录
unauthorized: authentication require
复制代码
$ ducker login
复制代码
登录后重新build,又提示没有权限,但重复执行了一次build后又成功了。
把这个image发布到docker hub
$ docker push jeffzzz/flask-demo:latest
复制代码
不过分享image,不如分享产生这个image的Dockerfile hub.docker.com/ create —> create automated build -> 关联到github包含Dockerfile的仓库
如果要搭建一个私有的docker hub,可用官方提供的registry去创建
运行image
$ docker run jeffzzz/flask-demo
复制代码
后台运行
$ docker run -d image_id
复制代码
使用交互方式进入docker bash
$ docker exec -it 3e5eb7eb19d7 /bin/bash
复制代码
进入python
$ docker exec -it 3e5eb7eb19d7 python
复制代码
停止运行中的docker
$ docker stop 3e5eb7eb19d7
复制代码
删除所有退出的container
$ docker rm $(docker ps -aq)
复制代码
显示container 信息
$ docker inspect container_id
复制代码
显示container运行产生的输出
$ docker logs container_id
复制代码
build 一个linux命令行工具
FROM ubuntu
RUN apt-get update && apt-get install -y stress
ENTRYPOINT ["usr/bin/stesss"]
CMD []
复制代码
CMD 参数为空,在运行时接受命令行参数