2019-03-11 2019-03-11 Docker学习日记 get-started part2

当运行python时,传统的方法是在宿主机上安装python,但需要你的所有环境都是完美的。而如今我们可以抓取一个便携python运行时文件作为镜像——这种便携式镜像由Dockerfile定义。

用Dockerfile来定义一个容器

Dockerfile定义了你容器中的环境里发生的事。由于向资源(网络接口,磁盘驱动等)的通行被虚拟化了,所以你必须定位向外部世界的端口(ports),并且明确你想复制哪一个文件至你的环境中。

build时遇到问题

按文档一步步做都没什么问题,直到执行到 docker build --tag=friendlyhello . 命令时,由于众所周知的原因,报了网络连接的错。


QQ截图20190311201114.png

先是去google查了解决方案,发现由于特殊国情,外网上的解答并不适用。于是关掉little rocket前往中文互联网搜索。最终解决。解决方案如下:

  1. 右键little rocket,勾选“允许其他设备连入”。


    QQ截图20190311201340.png
  2. 打开docker的settings,设置如下:


    QQ截图20190311201452.png

之后再运行,成功。


QQ截图20190311202023.png

在网页上看到你的build

docker run -p 4000:80 friendlyhello
之后打开网页 http://localhost:4000 即可看到如下界面

QQ截图20190311202519.png

以下命令可在shell中查看网页信息:curl http://localhost:4000

QQ截图20190311202748.png

注意windows上容器的关闭方式
ctrl+c并不会停止容器的运行,在windows的shell中使用ctrl+c之后,docker container ls 列出所有运行中的container及其id,然后用docker container stop CONTAINER ID 来终止容器。

QQ截图20190311203046.png

QQ截图20190311203330.png

用分离模式运行你的应用

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容