Below you will find pages that utilize the taxonomy term “dockerfile”
December 31, 2019
使用Dockerfile 多阶段构建Golang 应用
"docker在开发和运维中使用的场景越来越多,作为开发人员非常有必要了解一些docker的基本知识,而离我们工作中最近的也就是对应用的docker部署编排了,小到一个dockerfile, docker-compse文件的编写,大到k8s的管理。这里我们以 golang应用为例讲解一些Dockerfile的基本用法,在ci/cd中经常用到这些知识。\n前提 项目清单:\ndrwxr-xr-x 9 sxf staff 288 12 31 16:13 . drwx------@ 17 sxf staff 544 12 31 14:59 .. -rw-r--r-- 1 sxf staff 14 12 31 16:09 .dockerignore drwxr-xr-x 14 sxf staff 448 12 31 16:21 .git -rw-r--r-- 1 sxf staff 467 12 31 16:08 Dockerfile -rw-r--r-- 1 sxf staff 11 12 31 15:01 README.md -rw-r--r-- 1 sxf staff 84 12 31 …"
January 15, 2019
docker build . 命令后面的.是什么意思
"今天来公司自己构建了一个Dockerfile,放在一个经常用到的项目目录里,内容如下:\n# This is a comment FROM ubuntu:14.04 MAINTAINER Docker Newbee \u0026lt;newbee@docker.com\u0026gt; RUN apt-get -qq update RUN apt-get -qqy install ruby ruby-dev RUN gem install sinatra 然后执行\nsudo docker build -t \u0026#34;cfanbo/test:v2\u0026#34; . 发现在构建的时候发送给 docker daemon 竟然有4G多,超极大。首先的第一反映出问题了。一个ubuntu镜像也没有这么大呀,况且现在还没有开始从远程pull 镜像呢。\n那到底什么情况了呢?经过一翻搜索,发现在docker build . 的时候,会将当前目录里的内容发送给 docker daemon。只需要加一个 .dockerignore 文件,将其它内容排除掉就可以了,类似于git中的.gitignore文件的作用。\n后面就想通 …"
July 10, 2018
使用Dockerfile构建Swoole+php7环境
"FROM php:7.2.7-cli RUN apt-get update \u0026amp;\u0026amp; apt-get install -y libmemcached-dev zlib1g-dev RUN pecl install redis-4.0.1 \u0026amp;\u0026amp; pecl install swoole-4.0.1 \u0026amp;\u0026amp; pecl install memcached-3.0.4 \u0026amp;\u0026amp; pecl install xdebug-2.6.0 \u0026amp;\u0026amp; docker-php-ext- enable redis swoole memcached xdebug COPY . /usr/src/myapp WORKDIR /usr/src/myapp CMD [ \u0026#34;php\u0026#34;, \u0026#34;-m\u0026#34; ] 构建完环境后,使用方法见: https://blog.haohtml.com/archives/17925 …"
February 2, 2016
利用 Dockerfile 来创建镜像
"使用 docker commit 来扩展一个镜像比较简单,但是不方便在一个团队中分享。我们可以使用 docker build 来创建一个新的镜像。为此,首先需要创建一个 Dockerfile,包含一些如何创建镜像的指令。\n新建一个目录和一个 Dockerfile\n$ mkdir sinatra $ cd sinatra $ touch Dockerfile Dockerfile 中每一条指令都创建镜像的一层,例如:\n# This is a comment FROM ubuntu:14.04 MAINTAINER Docker Newbee RUN apt-get -qq update RUN apt-get -qqy install ruby ruby-dev RUN gem install sinatra Dockerfile 基本的语法是\n使用#来注释 FROM 指令告诉 Docker 使用哪个镜像作为基础 接着是维护者 MAINTAINER 的信息 RUN开头的指令会在创建中运行,比如安装一个软件包,在这里使用 apt-get 来安装了一些软件 编写完成 Dockerfile 后 …"