「学习笔记」Docker简介与安装(Linux环境centos)

Docker 是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似于app),更重要的是容器性能开销极低。

1. Docker解决的问题

  • 解决运行环境和配置问题,方便发布,方便做持续集成。
    • 由于不同的机器有不同的操作系统,以及不同的库和组件,在将一个应用部署到多台机器上需要进行大量的环境配置操作。
    • Docker主要解决环境配置问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程。
    • 使用Docker可以不修改应用程序代码,不需要开发人员学习特定环境下的技术,就能够将现有的应用程序部署在其它机器上。
  • 使用Docker的好处:
    • 部署方便且安全,隔离性好,快速回滚,成本低
  • Docker的应用场景:
    • Web 应用的自动化打包和发布。
    • 自动化测试和持续集成、发布。
    • 在服务型环境中部署和调整数据库或其他的后台应用。

2. Docker架构

Docker使用客户端-服务器(C/S)架构模式,使用远程API来管理和创建Docker容器。 Docker容器通过Docker镜像(Images)来创建,容器与镜像的关系类似于面向对象编程中的对象与类。

「工程实践」Jenkins自动部署Jar到远程服务器

1. 配置远程服务器SSH免密登录

  1. 本地客户端生成公私钥(一路回车默认即可),会在用户目录.ssh文件夹下创建公私钥
[localuser@localhost .ssh]$ ssh-keygen
[localuser@localhost .ssh]$ ls
id_rsa  id_rsa.pub
  1. 上传公钥到服务器,这里远程服务器地址为:192.168.2.200,用户为:testuser
ssh-copy-id -i ~/.ssh/id_rsa.pub testuser@192.168.2.200

上面这条命令会在远程服务器的~/.ssh目录生成authorized_keys,里面是id_rsa.pub(公钥)内容。

「学习笔记」Jenkins - 声明式流水线Jenkins Pipeline

1. Jenkins Pipeline 基本概念

流水线是用户定义的一个CD流水线模型 。流水线的代码定义了整个的构建过程, 他通常包括构建, 测试和交付应用程序的阶段 。 Jenkins Pipeline(或简称为"Pipeline")是一套插件,将持续交付的实现和实施集成到Jenkins中。 持续交付Pipeline自动化的表达了这样一种流程:将基于版本控制管理的软件持续的交付。 Jenkins Pipeline 的定义通常被写入到一个Jenkinsfile文本文件中,该文件可以被放入项目的源代码控制库中。

0%