ventana acoplable aprendizaje basado en tres

Una, el aprendizaje Dockerfile

La escritura consiste en una serie de parámetros y comandos constituidos. Estos comandos se utilizan en la imagen base y, finalmente, crear una nueva imagen. imagen de base es una imagen especular del nivel del sistema operativo.

  • Comandos comunes
DE image_name: etiqueta Que define el uso de la imagen de base para iniciar el proceso de construcción
nombre_usuario MAINTAINER Exención de responsabilidad creador espejo
valor de la clave ENV Establecer las variables de medio ambiente (se puede escribir múltiple)
comando RUN Dockerfile es una parte central (se puede escribir múltiple)
Añadir source_dir / archivo dest_dir / archivo Copiar el archivo en el host del contenedor, si se trata de un archivo comprimido, se va a extraer de forma automática después de la replicación
COPIA source_dir / archivo dest_dir / archivo Y como ADD, pero si no es un archivo comprimido y descomprimir
path_dir WORKDIR Establecer el directorio de trabajo
  • Crear un espejo usando un script
//创建目录
mkdir –p /docker/dockerjdk8

//通过ftp上传一个jdk到dockerjdk8目录里面

//创建一个名为Dockerfile文件
vi Dockerfile

//配置Dockerfile文件
#依赖镜像名称和ID
FROM centos:7
#指定镜像创建者信息
MAINTAINER YANGK
#切换工作目录
WORKDIR /docker
RUN mkdir  /docker/java
#ADD 是相对路径jar,把java添加到容器中
ADD jdk-8u131-linux-x64.tar.gz /docker/java

#配置java环境变量,如果不知道jdk解压之后的命令,可以在宿主机解压看看
ENV JAVA_HOME /docker/java/jdk1.8.0_131
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH  $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

Aquí Insertar imagen Descripción

//执行命令构建镜像
docker build -t='jdk1.8' .
-t:指定镜像名称
.指定Dockerfile的文件夹,当前目录就有,所以这个点就指代当前目录

//查看镜像是否创建成功
docker images

Aquí Insertar imagen Descripción

Aquí Insertar imagen Descripción

En segundo lugar, para construir un almacén privado

  • Construir depósito privado
//搜索镜像
docker search registry

//拉取镜像
docker pull registry

//启动私有仓库容器
docker run -di --name=registry -p 5000:5000 registry

Comprobar si depósito privado para construir un éxito, abrir el navegador para acceder a http: // centosIP: 5000 / v2 / _catalog ver { "repositorios": []} representa la puesta en marcha exitosa
Aquí Insertar imagen Descripción
daemon.json modificación, deja la dirección del almacén cargador de muelle fideicomiso privado

//修改daemon.json
vi /etc/docker/daemon.json

//增加如下内容
"insecure-registries":["centosIP:5000"]

//重启docker服务
systemctl restart docker

Aquí Insertar imagen Descripción

  • La duplicación se subido a un almacén privado
//标记此镜像为私有仓库的镜像
docker tag  jdk1.8 centosIP:5000/jdk1.8

//再次启动私服容器
docker start registry

上传标记的镜像
docker push centosIP:5000/jdk1.8

Aquí Insertar imagen Descripción

Acceder al repositorio de nuevo
Aquí Insertar imagen Descripción

Tercer despliegue, automatizado a través de plugins de Maven

  • Modificar la configuración del host estibador, de modo que el acceso de forma remota podría
//让docker可以远程访问,docker默认关闭远程操作。
vi /lib/systemd/system/docker.service

其中在ExecStart=后添加配置-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

Aquí Insertar imagen Descripción

//刷新配置,重启服务
systemctl daemon-reload 
systemctl restart docker  
docker start registry 
  • La creación de un proyecto Maven
//配置maven插件 
<build>
        <finalName>dockerDemo</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <!-- docker的maven插件,官网:https://github.com/spotify/docker-maven-plugin -->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>0.4.13</version>
                <configuration>
                    <!-- 生成的镜像名称 -->
                    <imageName>192.168.100.128:5000/${project.artifactId}:${project.version}</imageName>
                    <!-- 基础镜像  相当于FROM jdk1.8-->
                    <baseImage>jdk1.8</baseImage>
                    <!-- 入口点 相当于ENTRYPOINT ["java","-jar","/dockerDemo.jar"]-->
                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <!-- 创建路径,target路径-->
                            <directory>${project.build.directory}</directory>
                            <!-- dockerDemo.jar  相当于ADD dockerDemo.jar /-->
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                    <dockerHost>http://192.168.100.128:2375</dockerHost>
                </configuration>
            </plugin>
        </plugins>
    </build>

Aquí Insertar imagen Descripción

  • Desplegado a los servicios de ventana acoplable y PW
//进入项目工程目录下,将项目安装到本地仓库
mvn install

//输入以下命令,进行打包和上传镜像
mvn docker:build -DpushImage

Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción

  • contenedor de inicio
    Aquí Insertar imagen Descripción
    Aquí Insertar imagen Descripción
docker run -di --name=demo -p 9002:8080 192.168.100.128:5000/demo:0.0.1-SNAPSHOT

  proyecto Sprinboot Se crea el puerto por defecto es 8080,

Aquí Insertar imagen Descripción

Cuatro, el aprendizaje Jenkins

  • Jenkins es lo que
    Jenkins es una herramienta de integración continua para obtener el código desde el repositorio y generar una lista de cambios de código y salida de información a la salida del compilador. Generar informe de prueba JUnit / TestNG, que se utiliza en forma de gráficos y otros tipos de reporte detallado de las pruebas. Apoyar terceros plug-ins que Jenkins se ha vuelto más y más potente
  • entrada configuración de la instalación, requiere JDK apoyo
    Descargar:
//安装
rpm -ivh jenkins-2.183-1.1.noarch.rpm

//配置修改用户和端口

vi /etc/sysconfig/jenkins
JENKINS_USER="root" 
JENKINS_PORT="9909"

Aquí Insertar imagen Descripción

//启动服务,如果报错可以根据提示找到错误原因
systemctl start jenkins
//重启服务
systemctl daemon-reload
//查看启动状态
systemctl status jenkins

//获取初始密码
cat /var/lib/jenkins/secrets/initialAdminPassword

Inicio insuficiencia tiempo por Jenkins estado systemctl. Ver no se encuentra JDK (JDK mí la instalación silenciosa no es / usr / bin / java)

Aquí Insertar imagen Descripción

Modificar vi /etc/init.d/jenkins, aumentar la ruta del JDK
Aquí Insertar imagen Descripción

Obtener la contraseña
Aquí Insertar imagen Descripción

Y otra comienzo exitoso para aparecer en esta página, la razón es comprobar el sitio de actualización en el plug-in Manager, utilice https, http cambiaron en la línea
Aquí Insertar imagen Descripción

//通过这个命令找到更新文件的路径
find / -name "hudson.model.UpdateCenter.xml"
//修改
vi /var/lib/jenkins/hudson.model.UpdateCenter.xml

Aquí Insertar imagen Descripción

Reinicio Jenkins, se puede descargar el plug-in
Aquí Insertar imagen Descripción

  • Enchufe
    el escalón más alto después de lo que ha sido una instalación predeterminada de algunos plug-ins, como git similares. Tras la instalación de un plugin de Maven
    Aquí Insertar imagen Descripción

Después de seleccionar solo clic a continuación se instala directamente sobre ella

  • configuración de la herramienta global
    de integración continua Jenkins realmente puede llamar a Maven plugin, ejecutar el comando experto para lograr este efecto de integración
//解压
tar -zxvf apache-maven-3.6.1-bin.tar.gz 

//配置本地仓库
vi /yangk/apache-maven-3.6.1/conf/settings.xml

Aquí Insertar imagen Descripción

 - 工具配置

herramienta de configuración global para Jenkins hallazgo
Aquí Insertar imagen Descripción

 Configuración de JDK, GIT, Mvane
Aquí Insertar imagen Descripción

Antes de Git Jenkins se ha instalado de forma predeterminada, por lo que el defecto en él
Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción

  • Creación y ejecución de tareas
    antes de ejecutar este paso, voy a ser un tema ordinario cargado en el servidor dentro de un git.
    • nuevo proyecto
      Aquí Insertar imagen Descripción

Rellene el proyecto en dirección de Git
Aquí Insertar imagen Descripción

Pom.xml encontrar la ubicación del proyecto, el proyecto se compila en el orden de arranque de entrada de antemano, y luego guardarlo.
Aquí Insertar imagen Descripción

Haga clic en el cuadro rojo donde se puede iniciar esta tarea, y que aparecen aquí para identificar bola roja y los días de lluvia es porque no he logrado poner en marcha, cuenta git y la contraseña no se configuran
Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción

Podemos ver el progreso de este proyecto de la izquierda, haga clic en la barra de progreso puede ir a ver el programa detallado. Después de todo, si la configuración exitosa se puede ver la imagen completa en la ventana acoplable. Se configura en el interior de antemano pom.
Aquí Insertar imagen Descripción

Supongo que te gusta

Origin www.cnblogs.com/yangk1996/p/12657719.html
Recomendado
Clasificación