Dockerfile  文件构建docker镜像

FROM centos
MAINTAINER zh********h.cn RUN rm -f /etc/nginx/nginx.conf
COPY nginx.conf /etc/nginx/nginx.conf WORKDIR / RUN mkdir data ADD nginx.repo /etc/yum.repos.d
RUN yum install nginx -y
RUN echo "daemon off;" >> /etc/nginx/nginx.conf RUN rm -rf /etc/nginx/conf.d/default.conf ADD pre.weifeng.conf /etc/nginx/conf.d/ COPY build /data/build RUN useradd -s /sbin/nologin -M www EXPOSE 443
EXPOSE 80 CMD ["nginx"]

  

nginx  配置文件    

cat pre.weifeng.conf 

server {

        listen       443;
server_name localhost; location / {
try_files $uri /index.html;
root /data/build;
index index.html index.htm;
} error_page 404 /404.html;
error_page 404 = https://pre.weifeng.cn/index.html; location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
access_log off;
expires 10d;
root /data/build;
} location ~ \.(js|css)
{
access_log off;
expires 10d;
root /data/build;
} } server {
listen 80;
server_name pre.weifeng.cn;
return 301 https://pre.weifeng.cn$request_uri; }

  

shell  脚本实现jenkins上自动构建阿里云k8s上应用

#!/bin/bash

source /etc/profile

cd /mnt/workspace/official-ui-pre/

npm i && npm run build 

rm -rf /mnt/workspace/official-ui-pre/dockerfile/build

cd /mnt/workspace/official-ui-pre/dockerfile

mv  ../build  .

sudo docker build -t pre-official-ui -f Dockerfile.pre .

sudo docker login --username=***** -p ******* registry-vpc.cn-hangzhou.aliyuncs.com

sudo docker tag pre-official-ui registry-vpc.cn-hangzhou.aliyuncs.com/weifeng-system/pre-official-ui

sudo docker push  registry-vpc.cn-hangzhou.aliyuncs.com/weifeng-system/pre-official-ui

curl https://cs.console.aliyun.com/hook/trigger?*****************U0pM7Vd60sO3BESRlnjd46F7_wlxcXPKjS8t7k

if [ $? -eq 0 ]; then
echo -e "\033[32m[ the application official-ui-pre successfully deployed ]\033[0m" else
echo -e "\033[31m\033[01m[ the application official-ui-pre deploy failed ]\033[0m" fi

  

第二种方式:

dockefile:

FROM nginx:1.15.10-alpine
COPY dist /usr/share/nginx/html

  

执行Shell :

SERVICE_NAME=dev-platform-nginx
TAG=0.1.${BUILD_NUMBER} REGISTRY=registry-vpc.cn-hangzhou.aliyuncs.com
REGISTRY_NAMESPACE=weifeng IMAGE=$REGISTRY/$REGISTRY_NAMESPACE/$SERVICE_NAME:$TAG npm i && npm run build docker build -t $IMAGE .
docker push $IMAGE kubectl set image -n weifeng-test deployment/$SERVICE_NAME $SERVICE_NAME=$IMAGE

  

nginx.conf ,   和nginx 配置文件通过阿里云k8s 配置项挂载方式进行配置。

Dockerfile 构建前端nginx应用并用shell脚本实现jenkins自动构建的更多相关文章

  1. Dockerfile 构建前端node应用并用shell脚本实现jenkins自动构建

    cat Dockerfile.node.pre FROM centos MAINTAINER zhao*******h.cn ENV LANG en_US.UTF-8 RUN /bin/cp /usr ...

  2. Dockerfile 构建后端springboot应用并用shell脚本实现jenkins自动构建

    Dockerfile 文件构建docker镜像 FROM centos MAINTAINER zh*****eng "z*******ch.cn" ENV LANG en_US.U ...

  3. Dockerfile 构建后端tomcat应用并用shell脚本实现jenkins自动构建

    Dockerfile 文件构建docker镜像 FROM centos MAINTAINER zhaoweifeng "zh******tech.cn" ENV LANG en_U ...

  4. 自动化部署-从maven到shell脚本到jenkins

    Java代码自动部署 [ ①Java代码自动部署-总结简介] 代码部署是每一个软件开发项目组都会有的一个流程,也是从开发环节到发布功能必不可少的环节.对于Java开发者来说,Java代码的发布部署也是 ...

  5. 小伙伴想学Jenkins自动构建发布项目,我:安排上了!!

    写在前面 趁着十一长假,很多小伙伴都在悄悄学习,有些是为了能够顺利通过面试,进入大厂升职加薪.有些则是为了进一步巩固和提高自己的专业技能,希望有朝一日能过成为互联网架构师乃至技术专家.这不,就有小伙伴 ...

  6. Gitlab使用Webhook实现Push代码后的jenkins自动构建

    本文出自https://www.cnblogs.com/kevingrace/p/6479813.html 怕以后找不到,所以先写到自己博客中 Gitlab利用Webhook实现Push代码后的jen ...

  7. Gitlab源码库里代码提交后,如何触发jenkins自动构建?

    版本库里代码提交后,如何触发jenkins自动构建?这是一个面试题,感觉自己回答的并不好,因为并没有用过这个功能,之前公司实际项目用的是svn版本管理,一般都用立刻构建,和定时任务构建(不管代码是否有 ...

  8. 使用Docker+Jenkins自动构建部署

    环境 Windows 10 Docker Version 18.06.1-ce-win73 (19507) 运行jenkins 运行jenkins 容器 docker run -d --name ln ...

  9. 实战:向GitHub提交代码时触发Jenkins自动构建

    当我们提交代码到GitHub后,可以在Jenkins上执行构建,但是每次都要动手去执行略显麻烦,今天我们就来实战Jenkins的自动构建功能,每次提交代码到GitHub后,Jenkins会进行自动构建 ...

随机推荐

  1. win8 中如何删除 共享文件夹 用户名和密码

    在访问共享文件夹时我们都喜欢选中记住用户名和密码,可是有时候密码输入错误或者密码修改了,这时就需要我们删除或则修改先前记住的用户名和密码记录. 首先进入:控制面板\所有控制面板项\凭据管理器 选择wi ...

  2. 八一八cvs vss svn和git比较

    特征 CVS Git Mercurial Subversion 是否原子提交 CVS: 没有. CVS提交不是原子的 Git: 是的. 提交都是原子的 Mercurial: 是的 Subversion ...

  3. windows 通过Web.config添加mimetype映射

    在Web.config里添加以下代码即可 <configuration> <system.webServer> <staticContent> <!-- re ...

  4. Window配置Redis环境和简单使用

    一.关于Redis Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理.它支持字符串.哈希表.列表.集合.有序集合,位图,hyperloglogs等数据 ...

  5. (转)溶解shader

    游戏中物体腐化消失,燃烧消失时,会有从局部慢慢消失的效果,然后配合一些粒子特效,就能达到非常好的美术效果.类似效果如下: 注:_DissColor为溶解主色,_AddColor为叠加色,按照溶解的移动 ...

  6. 编码GBK的不可映射字符

    1.错误描写叙述 [ERROR] /E:/Eclipse/workspace/huxs/src/test/java/com/you/huxs/utils/SpringTestBase.java:[14 ...

  7. android中抽屉布局DrawerLayout的使用

    这个抽屉布局类似于手机QQ的主界面,点击左上角头像,会从界面左侧弹出一个抽屉,展示一些内容. 首先是布局界面activity_main.xml: <?xml version="1.0& ...

  8. CSS外框高度自动适应

    当有浮动float时,最外框会不跟随内容的高度而高: 解决办法一:清除浮动  clear:both <!DOCTYPE html> <html xmlns="http:// ...

  9. VMware vCloud Director network ports diagram

    see:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&exter ...

  10. C# FTP常规方法

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...