CentOS7-Docker-DockerFile-05

1、什么是DockerFile

  • dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本。
  • 构建步骤:
  1. 编写DockerFile文件
  2. docker build 构建镜像
  3. docker run

查看镜像的DockerFile

Docker Hub地址


2、DockerFile构建过程

  • 基础知识:
  1. 每条保留字指令都必须为大写字母后面要跟随至少一个参数
  2. 指令按照从上到下,顺序执行
  3. # 表示注释
  4. 每条指令都会创建一个新的镜像层,并对镜像进行提交
  • 流程:
  1. docker从基础镜像运行一个容器
  2. 执行一条指令并对容器做出修改
  3. 执行类似 docker commit 的操作提交一个新的镜像层
  4. Docker再基于刚提交的镜像运行一个新容器
  5. 执行dockerfile中的下一条指令直到所有指令都执行完成!
  • 说明:
  1. 从应用软件的角度来看,DockerFile,docker镜像与docker容器分别代表软件的三个不同阶段。
  2. DockerFile 是软件的原材料 (代码)
  3. Docker 镜像则是软件的交付品 (.apk)
  4. Docker 容器则是软件的运行状态 (客户下载安装执行)
  5. DockerFile 面向开发,Docker镜像成为交付标准,Docker容器则涉及部署与运维,三者缺一不可!

  • DockerFile:需要定义一个DockerFile,DockerFile定义了进程需要的一切东西
  • DockerFile涉及的内容包括执行代码或者是文件、环境变量、依赖包、运行时环境、动态链接库、操作系统的发行版、服务进程和内核进程(当引用进行需要和系统服务和内核进程打交道,这时需要考虑如何设计 namespace的权限控制)等等。
  • Docker镜像:在DockerFile 定义了一个文件之后,Docker build 时会产生一个Docker镜像,当运行Docker 镜像时,会真正开始提供服务;
  • Docker容器:容器是直接提供服务的。

3、DockerFile指令

  • 关键字
关键字 作用
FROM 基础镜像,当前新镜像是基于哪个镜像的
MAINTAINER 镜像维护者的姓名混合邮箱地址
RUN 容器构建时需要运行的命令
EXPOSE 当前容器对外暴露的端口
WORKDIR 指定在创建容器后,终端默认登录的进来工作目录
ENV 用来在构建镜像过程中设置环境变量
ADD 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包
COPY 类似ADD,拷贝文件和目录到镜像中!
VOLUME 容器数据卷,用于数据保存和持久化工作
CMD 指定一个容器启动时要运行的命令,dockerFile中可以有多个CMD指令,但只有后一个生效!
ENTRYPOINT 指定一个容器启动时要运行的命令!和CMD一样
ONBUILD 当构建一个被继承的DockerFile时运行命令,父镜像在被子镜像继承后,父镜像的ONBUILD被触发

DockerFile菜鸟教程


4、实战测试

Docker Hub 中99% 的镜像都是通过在base镜像(Scratch)中安装和配置需要的软件构建出来的

1、自定义一个CentOS

1、查看下官方默认的CentOS的情况:

docker run -it --name centos001 centos /bin/bash

目的:使我们自己的镜像具备如下:登陆后的默认路径、vim编辑器、查看网络配置ifconfig支持

2、在宿主机的home目录下,创建 mydockerfile-test文件夹,新建dockerfile-centos文件

FROM centos
MAINTAINER hou<1658951186@qq.com>ENV MYPATH /usr/local
WORKDIR $MYPATHRUN yum -y install vim
RUN yum -y install net-toolsEXPOSE 80CMD echo $MYPATH
CMD echo "-------------------------end------------------------"
CMD /bin/bash

3、通过 dockerfile-centos文件,生成镜像

当前宿主机中的镜像列表信息

-- 生成镜像
-f dockerfile地址
-t 新镜像名字:版本号
. 表示当前目录位置docker build -f dockerfile-centos -t hou-centos:1.0 .
运行过程[root@localhost dockerfile-test]# docker build -f dockerfile-centos -t hou-centos:1.0 .
Sending build context to Docker daemon  2.048kB
Step 1/10 : FROM centos---> 5d0da3dc9764
Step 2/10 : MAINTAINER hou<1658951186@qq.com>---> Running in 464d6efaf018
Removing intermediate container 464d6efaf018---> 1b6e84821098
Step 3/10 : ENV MYPATH /usr/local---> Running in e823f2263d02
Removing intermediate container e823f2263d02---> 685794482262
Step 4/10 : WORKDIR $MYPATH---> Running in 6f2a64534b44
Removing intermediate container 6f2a64534b44---> c127563bb763
Step 5/10 : RUN yum -y install vim---> Running in baa5b8015dc2
CentOS Linux 8 - AppStream                      1.9 MB/s | 8.4 MB     00:04
CentOS Linux 8 - BaseOS                         3.4 MB/s | 4.6 MB     00:01
CentOS Linux 8 - Extras                          19 kB/s |  10 kB     00:00
Dependencies resolved.
================================================================================Package             Arch        Version                   Repository      Size
================================================================================
Installing:vim-enhanced        x86_64      2:8.0.1763-16.el8         appstream      1.4 M
Installing dependencies:gpm-libs            x86_64      1.20.7-17.el8             appstream       39 kvim-common          x86_64      2:8.0.1763-16.el8         appstream      6.3 Mvim-filesystem      noarch      2:8.0.1763-16.el8         appstream       49 kwhich               x86_64      2.21-16.el8               baseos          49 kTransaction Summary
================================================================================
Install  5 PackagesTotal download size: 7.8 M
Installed size: 30 M
Downloading Packages:
(1/5): gpm-libs-1.20.7-17.el8.x86_64.rpm        152 kB/s |  39 kB     00:00
(2/5): vim-filesystem-8.0.1763-16.el8.noarch.rp 1.4 MB/s |  49 kB     00:00
(3/5): vim-enhanced-8.0.1763-16.el8.x86_64.rpm  2.7 MB/s | 1.4 MB     00:00
(4/5): which-2.21-16.el8.x86_64.rpm             192 kB/s |  49 kB     00:00
(5/5): vim-common-8.0.1763-16.el8.x86_64.rpm    7.1 MB/s | 6.3 MB     00:00
--------------------------------------------------------------------------------
Total                                           4.7 MB/s | 7.8 MB     00:01
warning: /var/cache/dnf/appstream-02e86d1c976ab532/packages/gpm-libs-1.20.7-17.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 8483c65d: NOKEY
CentOS Linux 8 - AppStream                      499 kB/s | 1.6 kB     00:00
Importing GPG key 0x8483C65D:Userid     : "CentOS (CentOS Official Signing Key) <security@centos.org>"Fingerprint: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65DFrom       : /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                        1/1 Installing       : which-2.21-16.el8.x86_64                               1/5 Installing       : vim-filesystem-2:8.0.1763-16.el8.noarch                2/5 Installing       : vim-common-2:8.0.1763-16.el8.x86_64                    3/5 Installing       : gpm-libs-1.20.7-17.el8.x86_64                          4/5 Running scriptlet: gpm-libs-1.20.7-17.el8.x86_64                          4/5 Installing       : vim-enhanced-2:8.0.1763-16.el8.x86_64                  5/5 Running scriptlet: vim-enhanced-2:8.0.1763-16.el8.x86_64                  5/5 Running scriptlet: vim-common-2:8.0.1763-16.el8.x86_64                    5/5 Verifying        : gpm-libs-1.20.7-17.el8.x86_64                          1/5 Verifying        : vim-common-2:8.0.1763-16.el8.x86_64                    2/5 Verifying        : vim-enhanced-2:8.0.1763-16.el8.x86_64                  3/5 Verifying        : vim-filesystem-2:8.0.1763-16.el8.noarch                4/5 Verifying        : which-2.21-16.el8.x86_64                               5/5 Installed:gpm-libs-1.20.7-17.el8.x86_64         vim-common-2:8.0.1763-16.el8.x86_64    vim-enhanced-2:8.0.1763-16.el8.x86_64 vim-filesystem-2:8.0.1763-16.el8.noarchwhich-2.21-16.el8.x86_64             Complete!
Removing intermediate container baa5b8015dc2---> d9587c88dbaf
Step 6/10 : RUN yum -y install net-tools---> Running in b9aacd14dd40
Last metadata expiration check: 0:00:10 ago on Thu Jan  6 14:48:41 2022.
Dependencies resolved.
================================================================================Package         Architecture Version                        Repository    Size
================================================================================
Installing:net-tools       x86_64       2.0-0.52.20160912git.el8       baseos       322 kTransaction Summary
================================================================================
Install  1 PackageTotal download size: 322 k
Installed size: 942 k
Downloading Packages:
net-tools-2.0-0.52.20160912git.el8.x86_64.rpm   2.5 MB/s | 322 kB     00:00
--------------------------------------------------------------------------------
Total                                           662 kB/s | 322 kB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                        1/1 Installing       : net-tools-2.0-0.52.20160912git.el8.x86_64              1/1 Running scriptlet: net-tools-2.0-0.52.20160912git.el8.x86_64              1/1 Verifying        : net-tools-2.0-0.52.20160912git.el8.x86_64              1/1 Installed:net-tools-2.0-0.52.20160912git.el8.x86_64                                     Complete!
Removing intermediate container b9aacd14dd40---> 34905ae822a5
Step 7/10 : EXPOSE 80---> Running in a1b476e1c698
Removing intermediate container a1b476e1c698---> c1dee8f8843a
Step 8/10 : CMD echo $MYPATH---> Running in 2fdaef7a94e6
Removing intermediate container 2fdaef7a94e6---> 151167473545
Step 9/10 : CMD echo "-------------------------end------------------------"---> Running in 19a99b23e9b9
Removing intermediate container 19a99b23e9b9---> 1782e00525b2
Step 10/10 : CMD /bin/bash---> Running in e80c8a8d48b3
Removing intermediate container e80c8a8d48b3---> 25ad1dfbbb2f
Successfully built 25ad1dfbbb2f
Successfully tagged hou-centos:1.0

4、查看生成的镜像

5、运行生成的centos镜像测试

-- 要加版本号哈,不然就会先去搜索下载镜像再运行
docker run -it --name centos001 hou-centos:1.0 /bin/bash

6、列出镜像地的变更历史

--docker history 镜像名称或镜像ID
docker history 25ad1dfbbb2f

2、CMD 和 ENTRYPOINT 关键字的区别

  • 两个命令都是指定一个容器启动时要运行的命令
  • CMD:会被 docker run 之后的参数替换只有最后一个生效
  • ENTRYPOINT: docker run 之后的参数会被当做参数传递给 ENTRYPOINT,形成新的组合

测试CMD命令

1、新建 dockerfile-cmd文件

-- 启动容器后,打印当前目录下所有的文件列表信息
FROM centos
CMD ["ls","-a"]
2、build dockerfile-centos文件,生成镜像
docker build -f dockerfile-cmd -t centos-cmd:1.0 .

3、启动容器测试
docker run -it centos-cmd:1.0

4、如果我们希望用 -l 列表展示信息,我们就需要加上 -l参数
docker run -it centos-cmd:1.0 -l

问题:
我们可以看到可执行文件找不到的报错,executable file not found。
跟在镜像名后面的是 command,运行时会替换 CMD 的默认值。因此这里的 -l 替换了原来的 CMD,而不是添加在原来的 ls -a 后面。
而 -l 根本不是命令,所以自然找不到。
如果我们希望加入 -l 这参数,我们就必须重新完整的输入这个命令:run -it centos-cmd:1.0 ls -la

测试ENTRYPOINT命令

1、新建 dockerfile-entrypoint文件

-- 启动容器后,打印当前目录下所有的文件列表信息
FROM centos
ENTRYPOINT ["ls","-a"]
2、build dockerfile-entrypoint文件,生成镜像
docker build -f dockerfile-entrypoint -t centos-entrypoint:1.0 .

3、启动容器测试
docker run -it centos-entrypoint:1.0

4、测试-l参数,发现可以直接使用,这里就是一种追加,
我们可以明显的知道 CMD 和ENTRYPOINT 的区别了
docker run -it centos-entrypoint:1.0 -l

3、自定义镜像 tomcat

1、准备工作

1、在宿主机home目录下新建tomcat文件夹
2、将apache-tomcat-8.5.73.tar.gz和jdk-linux-x64.tar.gz拷贝到 /home/tomcat目录下
3、在 /home/tomcat目录下,新建个Dockerfile文件(Dockerfile这个名称,在 docker build 时,就不用加 -f 选项了)

Tomcat8.5.73下载地址
JDK1.8.0_131下载地址

2、创建 Dockerfile文件

FROM centos
MAINTAINER hou<1658981186@qq.com>#把宿主机当前上下文的read.txt拷贝到容器/usr/local/路径下
COPY read.txt  /usr/local/cincontainer.txt#把java与tomcat添加到容器中
ADD jdk-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-8.5.73.tar.gz /usr/local/#安装vim编辑器
RUN yum -y install vim#设置工作访问时候的WORKDIR路径,登录落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH#配置java与tomcat环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_131
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.73
ENV CATALINA_BASE /usr/local/apache-tomcat-8.5.73
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin#容器运行时监听的端口
EXPOSE 8080#启动时运行tomcat并动态打印日志信息
CMD /usr/local/apache-tomcat-8.5.73/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.73/bin/logs/catalina.out

3、docker build Dockerfile文件,生成镜像

docker build -t hou-tomcat:1.0 .
-- 运行过程[root@localhost tomcat]# docker build -t hou-tomcat:1.0 .
Sending build context to Docker daemon  196.1MB
Step 1/15 : FROM centos---> 5d0da3dc9764
Step 2/15 : MAINTAINER hou<1658981186@qq.com>---> Running in dddc2af70a27
Removing intermediate container dddc2af70a27---> 8d3b9475b6c3
Step 3/15 : COPY read.txt  /usr/local/cincontainer.txt---> aabb697f2f9a
Step 4/15 : ADD jdk-linux-x64.tar.gz /usr/local/---> fb7fa22145b1
Step 5/15 : ADD apache-tomcat-8.5.73.tar.gz /usr/local/---> 951bb5657195
Step 6/15 : RUN yum -y install vim---> Running in f593431621b5
CentOS Linux 8 - AppStream                       56 kB/s | 8.4 MB     02:34
CentOS Linux 8 - BaseOS                         611 kB/s | 4.6 MB     00:07
CentOS Linux 8 - Extras                          14 kB/s |  10 kB     00:00
Dependencies resolved.
================================================================================Package             Arch        Version                   Repository      Size
================================================================================
Installing:vim-enhanced        x86_64      2:8.0.1763-16.el8         appstream      1.4 M
Installing dependencies:gpm-libs            x86_64      1.20.7-17.el8             appstream       39 kvim-common          x86_64      2:8.0.1763-16.el8         appstream      6.3 Mvim-filesystem      noarch      2:8.0.1763-16.el8         appstream       49 kwhich               x86_64      2.21-16.el8               baseos          49 kTransaction Summary
================================================================================
Install  5 PackagesTotal download size: 7.8 M
Installed size: 30 M
Downloading Packages:
(1/5): gpm-libs-1.20.7-17.el8.x86_64.rpm         38 kB/s |  39 kB     00:01
(2/5): vim-filesystem-8.0.1763-16.el8.noarch.rp  18 kB/s |  49 kB     00:02
(3/5): which-2.21-16.el8.x86_64.rpm             6.3 kB/s |  49 kB     00:07
(4/5): vim-enhanced-8.0.1763-16.el8.x86_64.rpm   32 kB/s | 1.4 MB     00:43
(5/5): vim-common-8.0.1763-16.el8.x86_64.rpm     31 kB/s | 6.3 MB     03:28
--------------------------------------------------------------------------------
Total                                            38 kB/s | 7.8 MB     03:30
warning: /var/cache/dnf/appstream-02e86d1c976ab532/packages/gpm-libs-1.20.7-17.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 8483c65d: NOKEY
CentOS Linux 8 - AppStream                      1.6 MB/s | 1.6 kB     00:00
Importing GPG key 0x8483C65D:Userid     : "CentOS (CentOS Official Signing Key) <security@centos.org>"Fingerprint: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65DFrom       : /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                        1/1 Installing       : which-2.21-16.el8.x86_64                               1/5 Installing       : vim-filesystem-2:8.0.1763-16.el8.noarch                2/5 Installing       : vim-common-2:8.0.1763-16.el8.x86_64                    3/5 Installing       : gpm-libs-1.20.7-17.el8.x86_64                          4/5 Running scriptlet: gpm-libs-1.20.7-17.el8.x86_64                          4/5 Installing       : vim-enhanced-2:8.0.1763-16.el8.x86_64                  5/5 Running scriptlet: vim-enhanced-2:8.0.1763-16.el8.x86_64                  5/5 Running scriptlet: vim-common-2:8.0.1763-16.el8.x86_64                    5/5 Verifying        : gpm-libs-1.20.7-17.el8.x86_64                          1/5 Verifying        : vim-common-2:8.0.1763-16.el8.x86_64                    2/5 Verifying        : vim-enhanced-2:8.0.1763-16.el8.x86_64                  3/5 Verifying        : vim-filesystem-2:8.0.1763-16.el8.noarch                4/5 Verifying        : which-2.21-16.el8.x86_64                               5/5 Installed:gpm-libs-1.20.7-17.el8.x86_64         vim-common-2:8.0.1763-16.el8.x86_64    vim-enhanced-2:8.0.1763-16.el8.x86_64 vim-filesystem-2:8.0.1763-16.el8.noarchwhich-2.21-16.el8.x86_64             Complete!
Removing intermediate container f593431621b5---> ccc640109fd3
Step 7/15 : ENV MYPATH /usr/local---> Running in d6260b3bda47
Removing intermediate container d6260b3bda47---> 36d5d0b5ef33
Step 8/15 : WORKDIR $MYPATH---> Running in 6284727f4c3b
Removing intermediate container 6284727f4c3b---> e9d7a2395eb2
Step 9/15 : ENV JAVA_HOME /usr/local/jdk1.8.0_131---> Running in bdca27b8e1ce
Removing intermediate container bdca27b8e1ce---> 4899302c4ebb
Step 10/15 : ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar---> Running in d13f4ab88cbe
Removing intermediate container d13f4ab88cbe---> 234f0403b019
Step 11/15 : ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.73---> Running in 732c5ac41e60
Removing intermediate container 732c5ac41e60---> 6186375490d8
Step 12/15 : ENV CATALINA_BASE /usr/local/apache-tomcat-8.5.73---> Running in 570c7a15339b
Removing intermediate container 570c7a15339b---> 0a16f2385ec2
Step 13/15 : ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin---> Running in df7eebe8078e
Removing intermediate container df7eebe8078e---> 3ea0b91d7c81
Step 14/15 : EXPOSE 8080---> Running in 8a4872c8e9c3
Removing intermediate container 8a4872c8e9c3---> 67d4955ad68f
Step 15/15 : CMD /usr/local/apache-tomcat-8.5.73/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.73/bin/logs/catalina.out---> Running in 827c14df6be7
Removing intermediate container 827c14df6be7---> 466012b31894
Successfully built 466012b31894
Successfully tagged hou-tomcat:1.0

4、查看生成的镜像

5、启动容器

备注:
Docker挂载主机目录Docker访问出现cannot open directory .: Permission denied解决办法:在挂载目录后多加一个--privileged=true参数即可
docker run -d -p 9090:8080 --name tomcat001 -v /home/tomcat/test:/usr/local/apache-tomcat-8.5.73/webapps/test -v /home/tomcat/tomcat_logs:/usr/local/apache-tomcat-8.5.73/logs --privileged=true hou-tomcat:1.0

6、验证测试访问

curl localhost:9090

7、发布项目测试

1、在 /home/tomcat/test 目录下,新建 WEB-INF文件
2、在 /home/tomcat/test/WEB-INF目录下,新建 web.xml启动文件
3、在 /home/tomcat/test 目录下,新建 test.jsp文件

web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>test</display-name>
</web-app>

test.jsp文件

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>heiheihei</title>
</head>
<body>
-----------welcome------------
<%=" my docker tomcat"%>
<br>
<br>
<% System.out.println("-------my docker tomcat-------");%>
</body>
</html>

8、再次访问测试

curl localhost:9090/test/test.jsp

9、查看日志

tail -f catalina.out

4、发布镜像

注册dockerhub ,需要有一个账号

1、登录 dockerhub

docker login -u 用户名

2、发布镜像

docker push 用户名/镜像名:版本号

显示带有标记的图像不存在于本地

-- 执行下面这条命令
docker tag 镜像ID 用户名/镜像名:版本号

再次 docker push

成功后,是这样的
可能是因为我用的虚拟机上传镜像,我的仓库里没有


docker制作自己的镜像并上传dockerhub—乔叶叶

5、总结

这是跟着大佬学习做的笔记,大家也可以去看看哈

【狂神说Java】Docker最新超详细版教程通俗易懂

CentOS7-Docker-DockerFile-05相关推荐

  1. centos7 docker安装和使用_入门教程

    centos7 docker安装和使用_入门教程 原文:centos7 docker安装和使用_入门教程 说明:本文也是参考互联网上的文章写的,感谢相关作者的贡献. 操作系统 64位CentOS Li ...

  2. Centos7: Docker安装与实践

    Centos7: Docker安装与实践 web 服务与客户端开发实战总结 前言 这是中山大学数据科学与计算机学院2019年服务计算的作业项目.所有代码与博客将被上传至github当中. Github ...

  3. Docker Dockerfile

    Docker Dockerfile 转自:https://www.runoob.com/docker/docker-dockerfile.html 什么是 Dockerfile? Dockerfile ...

  4. docker~Dockerfile优化程序的部署

    一些理论 我们都知道docker这个容器工具可以帮助我们快速进行环境的部署,这对于运营人员来说,无疑是个福音,而这个工作大叔认为不应该是运营人员干的,而是由开发人员来做,因为只有你知道你干的是什么,你 ...

  5. Centos7 Docker私有仓库搭建

    Centos7 Docker私有仓库搭建 仓库:集中存放镜像的地方,可分为公共仓库和私有仓库 (公共仓库"http://hub.docker.com"或国内的"http: ...

  6. 安装vm12+CentOS7+Docker以及常见问题解决

    想写一些关于数据库操作的文章,比如mybatis等等,首先需要搭环境,我准备搭建vm12+centos7+docker+mysql环境,这里做了一些安装记录以及在安装时碰到的问题. vm12+Cent ...

  7. 斐讯n1安装centos7+docker openwrt

    斐讯n1安装centos7+docker openwrt 首先声明,我的n1是降级过的,系统默认usb启动优先级大于emmc,所以可以直接将镜像写入u盘,通过u盘启动系统,同时通过脚本将系统写入emm ...

  8. Docker Dockerfile 定制镜像

    使用 Dockerfile 定制镜像 Dockerfile 指令详解 FROM 指定基础镜像 RUN 执行命令 构建镜像 镜像构建上下文(Context) 其它 docker build 的用法 直接 ...

  9. Centos7 Docker Jenkins ASP.NET Core 2.0 自动化发布和部署

    写在前面 Docker一直很火热,一直想把原本的Jenkins自动部署工具搬到Docker上面,无奈今年一直忙于各种事情,迟迟未实施这个事情,正好迎来了dotnet core 2.0 的正式发布,升级 ...

  10. centos7 docker端口_使用Docker部署Python应用

    0 引言 在linux系统部署Python应用需要安装较多依赖,在内网环境下十分繁琐,而且有时候还需要在其他服务器运行,则需要重复搭建环境和部署应用,因此本文介绍利用docker容器技术来部署.鉴于本 ...

最新文章

  1. 关于赠书《VS Code》断货延迟的通知!
  2. CentOS 7 安装 MySQL
  3. 数据结构——逆波兰式
  4. iOS之UITraitCollection
  5. keyevent 封装_adb shell input keyevent 控制按键输入的数值(收藏版)
  6. [转帖]jQuery框架学习第八天:ASP.NET jQuery实施方案
  7. CSDN博客排名20000以后的用户怎么查询具体排名
  8. 对不起,又秀了一波恩爱!
  9. 湖北经济学院计算机专业全国排名,2018年湖北经济学院世界排名、中国排名、专业排名...
  10. Maven搭建Spring Security3.2项目详解
  11. Java爬虫,数据采集经验分享
  12. 语句覆盖、条件覆盖、判定覆盖、条件-判定覆盖、组合覆盖、路径覆盖
  13. 32位qt程序, 利用32位mysql驱动,连接64位mysql8.0
  14. 给Matlab添加工具箱Toolbox的方法(有截图详细讲解)(R2019b)
  15. 幼儿 Android App,中国幼儿园在线app
  16. 玩转Luat 进阶篇③——远程升级实现过程详解
  17. 晨曦 - 江湖一剑客
  18. 基因家族特征分析 - 染色体定位分析
  19. 朋友,别再干巴巴地“陈述”简历了,10条写作的技巧分享给你
  20. 1.1.7. Least Angle Regression(最小角回归)和 1.1.8. LARS Lasso

热门文章

  1. 计算机网络大学宿舍组网方案设计,学生公寓组网方案推荐 精品推荐
  2. NC打印模板汇总技巧
  3. JavaScript 打印星号三角形
  4. win7默认网关不可用_win7 默认网关不可用
  5. 陈继儒 -- 《小窗幽记》
  6. I2C中的10bit地址读写
  7. 模糊综合评价在实际问题中的应用(案例)
  8. 常用密码技术-对称加密
  9. 自动驾驶综述|定位、感知、规划常见算法汇总
  10. word找不到橡皮擦工具