Skip to content

Commit

Permalink
build: 分开镜像
Browse files Browse the repository at this point in the history
  • Loading branch information
liqiang-fit2cloud committed Mar 19, 2024
1 parent b50689f commit a935021
Show file tree
Hide file tree
Showing 3 changed files with 70 additions and 10 deletions.
3 changes: 1 addition & 2 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
.git*
ui
.git*
71 changes: 66 additions & 5 deletions .github/workflows/build-and-push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,19 @@ on:
- linux/amd64
- linux/arm64
- linux/amd64,linux/arm64
registry:
description: 'Push To Registry'
required: true
default: 'dockerhub, fit2cloud-registry'
type: choice
options:
- dockerhub
- fit2cloud-registry
- dockerhub, fit2cloud-registry

jobs:
build-and-push:
build-and-push-to-fit2cloud-registry:
if: contains(${{ github.event.inputs.registry }}, 'fit2cloud')
runs-on: ubuntu-latest
steps:
- name: Check Disk Space
Expand All @@ -42,12 +52,14 @@ jobs:
- name: Prepare
id: prepare
run: |
DOCKER_IMAGE_FIT2CLOUD=registry-hkproxy.fit2cloud.com/maxkb/maxkb
DOCKER_IMAGE_DOCKERHUB=1panel/maxkb
DOCKER_IMAGE=registry-hkproxy.fit2cloud.com/maxkb/maxkb
DOCKER_PLATFORMS=${{ github.event.inputs.architecture }}
TAG_NAME=${{ github.event.inputs.dockerImageTag }}
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE_FIT2CLOUD}:${TAG_NAME} --tag ${DOCKER_IMAGE_FIT2CLOUD}:latest --tag ${DOCKER_IMAGE_DOCKERHUB}:${TAG_NAME} --tag ${DOCKER_IMAGE_DOCKERHUB}:latest"
echo ::set-output name=version::${TAG_NAME}
if [[ TAG_NAME == *dev* ]]; then
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE}:${TAG_NAME}"
else
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE}:${TAG_NAME} --tag ${DOCKER_IMAGE}:latest"
fi
echo ::set-output name=buildx_args::--platform ${DOCKER_PLATFORMS} --no-cache \
${DOCKER_IMAGE_TAGS} .
- name: Set up QEMU
Expand All @@ -66,6 +78,55 @@ jobs:
registry: registry-hkproxy.fit2cloud.com
username: ${{ secrets.FIT2CLOUD_REGISTRY_USERNAME }}
password: ${{ secrets.FIT2CLOUD_REGISTRY_PASSWORD }}
- name: Docker Buildx (build-and-push)
run: |
docker buildx build --output "type=image,push=true" ${{ steps.prepare.outputs.buildx_args }} -f installer/Dockerfile
build-and-push-to-dockerhub:
if: contains(${{ github.event.inputs.registry }}, 'dockerhub')
runs-on: ubuntu-latest
steps:
- name: Check Disk Space
run: df -h
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: true
android: true
dotnet: true
haskell: true
large-packages: true
docker-images: true
swap-storage: true
- name: Check Disk Space
run: df -h
- name: Checkout
uses: actions/checkout@v4
with:
ref: main
- name: Prepare
id: prepare
run: |
DOCKER_IMAGE=1panel/maxkb
DOCKER_PLATFORMS=${{ github.event.inputs.architecture }}
TAG_NAME=${{ github.event.inputs.dockerImageTag }}
if [[ TAG_NAME == *dev* ]]; then
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE}:${TAG_NAME}"
else
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE}:${TAG_NAME} --tag ${DOCKER_IMAGE}:latest"
fi
echo ::set-output name=buildx_args::--platform ${DOCKER_PLATFORMS} --no-cache \
${DOCKER_IMAGE_TAGS} .
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GH_TOKEN }}
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
Expand Down
6 changes: 3 additions & 3 deletions installer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ RUN cd ui && \

FROM ghcr.io/1panel-dev/maxkb-python-pg:python3.11.8-pg15.3
# 创建工作目录
RUN mkdir -p /opt/maxkb/app && /opt/maxkb/app/ui && mkdir -p /opt/maxkb/model && mkdir -p /opt/maxkb/conf
RUN mkdir -p /opt/maxkb/app && mkdir -p /opt/maxkb/model && mkdir -p /opt/maxkb/conf
# 拷贝项目
COPY . /opt/maxkb/app
RUN rm -rf /opt/maxkb/app/ui/*
COPY installer/config.yaml /opt/maxkb/conf
COPY --from=vector-model model /opt/maxkb/app/model
COPY --from=web-build ui/dist /opt/maxkb/app/ui
ENV POSTGRES_USER root
ENV POSTGRES_PASSWORD Password123@postgres
WORKDIR /opt/maxkb/app
RUN rm -rf /opt/maxkb/app/build && \
mv /opt/maxkb/app/model/* /opt/maxkb/model && \
RUN mv /opt/maxkb/app/model/* /opt/maxkb/model && \
cp -r /opt/maxkb/model/base/hub /opt/maxkb/model/tokenizer && \
apt-get update && apt-get install -y curl && \
pip3 install --upgrade pip && \
Expand Down

0 comments on commit a935021

Please sign in to comment.