Docker 制作镜像 最新笔记

这里写自定义目录标题

CMD和ENTRYPOINT的区别

CMD #指定容器启动的时候要运行的命令,只有最后一个会生效,可被替代
ENTRYPOINT #指定这个容器启动的时候要运行的命令,可以追加命令
测试CMD

#编写dockerfile 文件
[root@wangqk lession101]# vim dockerfile-cmd-test
FROM centos:6
CMD ["ls","-a"]
#构建镜像
[root@wangqk lession101]# docker build -f dockerfile-cmd-test -t cmd-test  .
#run  运行
[root@wangqk lession101]# docker run cmd-test
.
..
.dockerenv
bin
等

#想追加一个命令 -l

[root@wangqk lession101]# docker run cmd-test -l
报错。。。
[root@wangqk lession101]# docker run cmd-test ls -al
正常

ENTRYPOINT

[root@wangqk lession101]# vim dockerfile-cmd-entrypoint
FROM centos:6
ENTRYPOINT ["ls","-a"]
#构建镜像
[root@wangqk lession101]# docker build -f dockerfile-cmd-entrypoint -t cmd-entrypoint .
#run  运行
[root@wangqk lession101]# docker run cmd-entrypoint
bin
dev
etc
home
等
[root@wangqk lession101]# docker run cmd-entrypoint -l

tomcat 镜像:

1.准备JDK安装包 tomcat压缩包 镜像文件
2.编写dockerfile文件

文件:
tomcat ,jdk

[root@wangqk lession102]# touch readme.txt
[root@wangqk lession102]# vim Dockerfile 
FROM centos:6
MAINTAINER  wangqk<651518854@qq.com>

COPY  readme.txt /usr/local/readme.txt

ADD jdk-8u121-linux-x64.tar.gz    /usr/local/
ADD apache-tomcat-8.0.52.tar.gz   /usr/local/

RUN yum -y install vim
ENV MYPATH /usr/local
WORKDIR $MYPATH

ENV JAVA_HOME /usr/local/jdk1.8.0_121
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.0.52
ENV CATALINA_BASH /usr/local/apache-tomcat-8.0.52
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin

EXPOSE 8080

CMD /usr/local/apache-tomcat-8.0.52/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.0.52/logs/catalina.out

构建镜像

[root@wangqk lession102]# docker build -t tomcat8:v1 .
[root@wangqk lession102]# docker run -d -p 8080:8080 --name crsc-oa-tomcat -v /data/demo/tomcat8/webapps/:/usr/local/apache-tomcat-8.0.52/webapps/ -v /data/demo/tomcat8/logs/:/usr/local/apache-tomcat-8.0.52/logs/  tomcat8:v1
[root@wangqk lession102]#  docker exec -it crsc-oa-tomcat /bin/bash

DockerFile

[root@localhost dockerfile]# pwd
/data/dockerfile
[root@localhost dockerfile]# cat Dockerfile 
#volume test
FROM centos
VOLUME ["/data/dockertext01","/data/dockertext02"]
CMD echo "file,------SUCCESS1"
CMD /bin/bash
# docker run -it -v /host1:/data/dockertext01 -v /host2:/data/dockertext01 centos /bin/bash

[root@localhost dockerfile]# 
[root@localhost dockerfile]# docker build -f /data/dockerfile/Dockerfile  -t  wangqk/centos .
[+] Building 411.9s (5/5) FINISHED                                                                                         
=> [internal] load build definition from Dockerfile                                                                  0.0s
=> => transferring dockerfile: 268B                                                                                  0.0s
=> [internal] load .dockerignore                                                                                     0.0s
=> => transferring context: 2B                                                                                       0.0s
=> [internal] load metadata for docker.io/library/centos:latest                                                      5.7s
=> [1/1] FROM docker.io/library/centos@sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177     406.1s
=> => resolve docker.io/library/centos@sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177       0.0s
=> => sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177 762B / 762B                            0.0s
=> => sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc 529B / 529B                            0.0s
=> => sha256:5d0da3dc976460b72c77d94c8a1ad043720b0416bfc16c52c45d4847e53fadb6 2.14kB / 2.14kB                        0.0s
=> => sha256:a1d0c75327776413fa0db9ed3adcdbadedc95a662eb1d360dad82bb913f8a1d1 83.52MB / 83.52MB                    391.8s
=> => extracting sha256:a1d0c75327776413fa0db9ed3adcdbadedc95a662eb1d360dad82bb913f8a1d1                            13.4s
=> exporting to image                                                                                                0.0s
=> => exporting layers                                                                                               0.0s
=> => writing image sha256:e8deb4d4c21b012068e73745c51d1fae1cc4759b12e73ddec098d9f9463709c1                          0.0s
=> => naming to docker.io/wangqk/centos 


[root@localhost dockerfile]# docker images
REPOSITORY      TAG       IMAGE ID       CREATED         SIZE
wangqk/centos   latest    e8deb4d4c21b   17 months ago   231MB

[root@localhost /]# docker run -it wangqk/centos
[root@51daa1025017 /]#
[root@localhost data]# docker run -it wangqk/centos
[root@38a3f6ff066d /]# ls /data/           
dockertext01  dockertext02

```

## 创建一个表格
一个简单的表格是这么创建的:
项目     | Value
-------- | -----
电脑  | $1600
手机  | $12
导管  | $1

### 设定内容居中、居左、居右
使用`:---------:`居中
使用`:----------`居左
使用`----------:`居右
| 第一列       | 第二列         | 第三列        |
|:-----------:| -------------:|:-------------|
| 第一列文本居中 | 第二列文本居右  | 第三列文本居左 |

### SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
|    TYPE   |ASCII                          |HTML
|----------------|-------------------------------|-----------------------------|
|Single backticks|`'Isn't this fun?'`            |'Isn't this fun?'            |
|Quotes          |`"Isn't this fun?"`            |"Isn't this fun?"            |
|Dashes          |`-- is en-dash, --- is em-dash`|-- is en-dash, --- is em-dash|

## 创建一个自定义列表
Markdown
:  Text-to-HTML conversion tool

Authors
:  John
:  Luke

## 如何创建一个注脚

一个具有注脚的文本。[^2]

[^2]: 注脚的解释

##  注释也是必不可少的

Markdown将文本转换为 HTML。

*[HTML]:   超文本标记语言

## KaTeX数学公式

您可以使用渲染LaTeX数学表达式 [KaTeX](https://khan.github.io/KaTeX/):

Gamma公式展示 $\Gamma(n) = (n-1)!\quad\forall
n\in\mathbb N$ 是通过欧拉积分

$$
\Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,.
$$

> 你可以找到更多关于的信息 **LaTeX** 数学表达式[here][1].

## 新的甘特图功能,丰富你的文章

```mermaid
gantt
       dateFormat  YYYY-MM-DD
       title Adding GANTT diagram functionality to mermaid
       section 现有任务
       已完成               :done,    des1, 2014-01-06,2014-01-08
       进行中               :active,  des2, 2014-01-09, 3d
       计划一               :         des3, after des2, 5d
       计划二               :         des4, after des3, 5d
```
- 关于 **甘特图** 语法,参考 [这儿][2],

## UML 图表

可以使用UML图表进行渲染。 [Mermaid](https://mermaidjs.github.io/). 例如下面产生的一个序列图:

```mermaid
sequenceDiagram
张三 ->> 李四: 你好!李四, 最近怎么样?
李四-->>王五: 你最近怎么样,王五?
李四--x 张三: 我很好,谢谢!
李四-x 王五: 我很好,谢谢!
Note right of 王五: 李四想了很长时间, 文字太长了<br/>不适合放在一行.

李四-->>张三: 打量着王五...
张三->>王五: 很好... 王五, 你怎么样?
```

这将产生一个流程图。:

```mermaid
graph LR
A[长方形] -- 链接 --> B((圆))
A --> C(圆角长方形)
B --> D{菱形}
C --> D
```

- 关于 **Mermaid** 语法,参考 [这儿][3],

## FLowchart流程图

我们依旧会支持flowchart的流程图:
```mermaid
flowchat
st=>start: 开始
e=>end: 结束
op=>operation: 我的操作
cond=>condition: 确认?

st->op->cond
cond(yes)->e
cond(no)->op
```

- 关于 **Flowchart流程图** 语法,参考 [这儿][4].

## 导出与导入

###  导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 **文章导出** ,生成一个.md文件或者.html文件进行本地保存。

### 导入
如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。

[1]: http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference
[2]: https://mermaidjs.github.io/
[3]: https://mermaidjs.github.io/
[4]: http://adrai.github.io/flowchart.js/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值