2024-11-07|今天我做了什么

构建 Docker 镜像 - 最佳实践

构建 Docker 镜像 - 最佳实践 笔记:

FROM eclipse-temurin:17-jdk
ARG JAR_FILE=build/libs/*.jar
COPY  ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

查看镜像层:

 docker image history myapp
  1. Docker 行中的每一行都将导致创建一个Docker 镜像层。可以将多行合并到一个行,减少镜像层。

  2. 镜像层的顺序很重要。您需要确保将变化很大的层放在底部Dockerfile,而将更稳定的层放在顶部。

  3. 可以使用 .dockerignore 文件忽略一些文件

  4. 可以将目录缓存。例如

    RUN --mount=type=cache,target=/root/.cache pip install -r requirements.txt
    
    RUN --mount=type=cache,target=/root/.cache mvn package
    

更换博客主题

将博客主题切换到 SivaLabs 博客使用的 wellington 主题,并进行了一些调整。

  • 修改 CSS,将图片居中显示,宽度设置为 70%

    article img {
        display: block; /* 将图片设为块级元素 */
        margin: 0 auto; /* 水平居中 */
        width: 70%;
        height: auto; /* 保持纵横比 */
    }
    
  • 修改 CSS,设置 table 第一、二列宽度和表格内字体大小

    article table th:first-of-type {
        width: 120px;
    }
    article table th:nth-of-type(2) {
        width: auto;
    }
    article table {
        font-size: 14px;
    }
    
  • 文章分享,添加 telegram、reddit、facebook、whatsapp;社交链接添加 telegram

  • 添加 分享 bilibili 视频的 shortcodes

    {{- $id := .Get "id" | default (.Get 0) -}}
    {{- $class := .Get "class" | default (.Get 1) -}}
    {{- $title := .Get "title" | default "Bilibili Video" }}
    <div {{ with $class }}class="{{ . }}"{{ else }}style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"{{ end }}>
        <iframe src="https://player.bilibili.com/player.html?isOutside=true&autoplay=0&bvid={{ $id }}" {{ if not $class }}style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;"{{ end }} allowfullscreen="true" title="{{ $title }}"></iframe>
    </div>
    

    使用方式:

    # 使用时,去掉<前面空格
    {{ < bilibili xxxxxxx >}}
    
  • 调整博客文章分类为:architecturedevopskubernetesmicroservicespring-boot

  • 不再使用阿里云图床,图片和博客源文件一起存储。使用 sips 将 jpg、jpeg 图片转换为 png,让后使用 imagemin 将 png 转换为 webp。参考 2024-11-05|今天我做了什么

    • 待实现:在 typora 中使用相对路径显示 png 原始图片,在提交代码之后通过 github action 替换 hugo 生成的 html 文件中图片地址为 webp 图片的绝对地址。
  • 删除 google ads 和评论,添加了 umami 访问统计。

CentOS 9 安装 MySQL、Mongodb、Redis

# mysql
dnf install mysql -y

# mongodb
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org.repo
[mongodb-org]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/5.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc
EOF

sudo dnf install -y mongodb-org-tools

# redis
sudo dnf install epel-release
sudo dnf install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
sudo snap install redis
sudo snap alias redis.cli redis-clix
Share this post:

Related content