Docker定时删除none镜像

在使用 docker 的时候会产生 none 镜像文件,偶尔没什么,但是比如使用了自动化部署工具那就不一样了,一天没准就上百个 none 镜像了,非常消耗资源,所以需要定时清理 删除 none 镜像命令 docker image prune -f 删除自动化部署中的碎片化文件 在自动化部署中 Docker 生成了很多碎片化文件,在使用 Jenkins 自动化部署项目时,生成了很多 Images 和创建的容器,这些上面的命令不足以删除,所以得用以下命令来删除 docker system prune -f 注意该命令会删除这些容器和镜像,所以最好慎重选择,当然,如果全是自动部署的容器就无所谓。 执行完后 其实这样清除缓存文件不是最完全的方式,最完全的是把空闲的 Volumes 也一并清除(不过我怕容器在启动过程中被自动执行了导致数据永久丢失,得不偿失 所以不加这个吧) docker system prune --volumes -f 配置自动化 既然知道了删除 none 镜像的命令,那么就简单了,只需要配置下 crontab 即可 crontab -e 尾部添加如下指令(表示每天 凌晨 3 点 30 分执行一次) ...

2021年12月20日 · 1 分钟 · 诚哥博客

通过Jenkins自动化部署简单的前后端项目

看公司成员,每次都为部署消耗不少时间,工作效率低,就想着提高工作效率,所以就尝试搭建 jenkins 前后端自动化部署项目。最后搭建完成也是非常开心。因为这效率提高不止一点。下面介绍搭建方式(spring boot 后台和 vite 前端) 1.配置 maven,jdk 和 nodejs 这里只配置 maven,个人觉得 jdk 和 nodejs 具体还是全局安装最好(个人觉得 jenkins 装不方便) 2.在项目中存放部署的文件 deploy.sh #!/bin/bash cd src/ui/web && pnpm install --registry=https://registry.npm.taobao.org && pnpm run build && cd .. && cd .. && docker-compose -f docker-compose.yml up --build -d 准备好 docker-compose.yaml 和 Dockerfile 等 3.在 jenkins 创建项目 填写 git 地址,选定分支 设置轮询(5 分钟查询一次是否有更新) 后端选择构建的 pom 文件,前端执行包含在 deploy.sh 中,直接执行即可 ...

2021年12月17日 · 1 分钟 · 诚哥博客

在Jenkins进行简单的自动化部署

在 Jenkins 进行简单的自动化部署 简单自动化部署前端项目 1.首先需要在自己项目里存放四个文件 deploy.sh #!/bin/bash docker-compose -f docker-compose.yml up --build -d docker-compose.yml version: "3" services: archetype-web: # 如果需要指定版本 就把 latest 换成版本号 build: ./ image: archetype-web:latest container_name: archetype-web ports: - "10231:80" privileged: true restart: always Dockerfile FROM nginx COPY dist/ /usr/share/nginx/html/ COPY nginx.conf /etc/nginx/conf.d/default.conf nginx.conf #开启gzip功能 gzip on; #开启gzip静态压缩功能 优先使用静态gz文件 gzip_static on; #gzip缓存大小 gzip_buffers 4 16k; #gzip http版本 gzip_http_version 1.1; #gzip 压缩级别 1-10 gzip_comp_level 5; #gzip 压缩类型 gzip_types text/plain application/javascript text/css application/xml text/javascript; # 是否在http header中添加Vary: Accept-Encoding,建议开启 gzip_vary on; server { listen 80; server_name localhost; #charset koi8-r; access_log /var/log/nginx/host.access.log main; error_log /var/log/nginx/error.log error; location / { root /usr/share/nginx/html; try_files $uri $uri/ /index.html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } } 然后将需要部署的前端页面全部放入 dist 目录下 ...

2021年12月16日 · 1 分钟 · 诚哥博客

在服务器上搭建Jenkins自动化部署工具

在公司发现很多时候都需要手动部署,然后有天听到自动部署这个词想着有没有什么工具能够自动部署项目,最好能自动化部署前后端生成 docker images 运行方便管理。最后经过我各种筛查,发现用 jenkins 最多,说干就干。起初是在 docker 安装 jenkins 后面发现 jenkins 对构建环境依赖比较强所以后面放弃用 docker 运行 jenkins 的想法,下面介绍 centos 安装 jenkins 方法 1.看 文档 安装 2.安装长期支持发布版 每 12 周从常规版本流中选择一个 LTS(长期支持)版本作为该时间段的稳定版本。它可以从 redhat-stable 的 yum 存储库安装。 sudo wget -O /etc/yum.repos.d/jenkins.repo \ https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key sudo yum upgrade sudo yum install epel-release java-11-openjdk-devel sudo yum install jenkins sudo systemctl daemon-reload 3.安装完后启动 jenkins systemctl start jenkins 有防火墙需要开放 8080 端口 # 开启端口 firewall-cmd --zone=public --add-port=8080/tcp --permanent # 重载配置 firewall-cmd --reload 访问 ip:8080 ...

2021年12月16日 · 1 分钟 · 诚哥博客