Docker 之八实战构建 Tomcat 服务器的 Docker 镜像
实战内容介绍
编写 Dockerfile 文件,指定终端登录后的默认路径,安装 vim、ifconfig、jdk、tomcat,并配置 jdk 与 tomcat 的环境变量,最后通过 Dockerfile 文件构建新的 Docker 镜像(基于 Centos)并运行。
目录结构介绍
1 | # 后续所有操作都在/root/build-tomcat目录下进行 |
实战内容介绍
编写 Dockerfile 文件,指定终端登录后的默认路径,安装 vim、ifconfig、jdk、tomcat,并配置 jdk 与 tomcat 的环境变量,最后通过 Dockerfile 文件构建新的 Docker 镜像(基于 Centos)并运行。
目录结构介绍
1 | # 后续所有操作都在/root/build-tomcat目录下进行 |
前言
目前比较流行的日志框架有 Log4j、Logback 等,这两个框架的作者是同一个人,Logback 旨在作为流行的 Log4j 项目的后续版本,从而恢复 Log4j 离开的位置。另外 SLF4J (Simple Logging Facade for Java) 则是一个日志门面框架,提供了日志系统中常用的接口,Logback 和 Log4j 则对 SLF4J 进行了实现。本文将讲述如何在 Spring Boot 中应用 SLF4J + Logback 实现日志的记录。
引入依赖
Spring Boot 默认内置了 Logback 日志框架,一般只需在 Maven 中要引入 spring-boot-starter-logging
依赖。
1 | <dependency> |
系统环境
1 | CentOS Linux release 7.6.1810 (Core) |
卸载 Mariadb
1 | # 查找mariadb模块 |
实战内容介绍
实战编写 Dockerfile,指定终端登录后的默认路径,同时预安装 vim、ifconfig 工具,最后通过 Dockerfile 构建新的 Centos 镜像并运行起来。
编写 Dockerfile 文件
1 | FROM centos |
Dockerfile 介绍
Dockerfile 是用来构建 Docker 镜像的文件,实质是一系列命令和参数构成的脚本文件。当 Dockerfile 文件编写完之后,可以通过 “docker build” 与”docker run” 命令构建并运行新的 Docker 镜像。其中 Dockerfile 定义了进程需要的一切东西,涉及的内容包括执行代码或者文件、环境变量、依赖包、运行时环境、动态链接库、操作系统的发行版本、服务进程和内核进程(当应用进程需要和系统服务、内核进程打交道的时候,需要考虑如何设计 namespace 的权限控制)等等。
Dockerfile、Docker 镜像、Docker 容器三者的关系
Dockerfile 面向开发,Docker 镜像是交付标准,Docker 容器则涉及部署与运维,三者缺一不可,合力充当 Docker 体系的基石。从应用软件的角度来看,Dockerfile、Docker 镜像与 Docker 容器分别代表软件的三个不同阶段,其中 Dockerfile 是软件的原材料,Docker 镜像是软件的交付品,Docker 容器则可以认为是软件的运行状态,示意图如下:
Gitlab 常规配置
1 | # 编辑Gitlab的配置文件 |
Gitlab 相关站点
Gitlab 介绍
GitLab 是基于 Ruby on Rails 的一个开源版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。GitLab 分为社区版(CE) 和企业版(EE)。它拥有与 Github 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序 (Wall) 进行交流。依赖组件:Ruby、Git、Nginx、Redis、Sidekiq、GitLab Runner、Unicorn Workers、PostgreSQL/MySQL/MariaDB 等,其中 MySQL/MariaDB 并不完全支持 Gitlab 的所有功能,官方强烈推荐安装 PostgreSQL。
安装环境说明
1 | $ uname -a |
Gitolite Github Repo
Gitolite 介绍
Gitolite 是一款 Perl 语言开发的 Git 服务管理工具,采用的是 SSH 协议并使用 SSH 公钥认证,能够通过配置文件对写操作进行基于分支和路径的精细授权。
安装环境说明
1 | $ uname -a |
系统环境
1 | CentOS Linux release 7.6.1810 (Core) |
临时更改最大打开文件描述符数
1 | # 查看限制 |