mirror of
https://github.com/khairul169/honey.git
synced 2025-04-28 14:59:32 +07:00
honey: Dockerized #1
This commit is contained in:
parent
9d2075a129
commit
15ec588876
52
.github/workflows/docker-image.yml
vendored
Normal file
52
.github/workflows/docker-image.yml
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
# https://docs.github.com/en/actions/publishing-packages/publishing-docker-images
|
||||||
|
|
||||||
|
|
||||||
|
name: Create and publish a Docker image
|
||||||
|
|
||||||
|
|
||||||
|
# Build Docker image on new release
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags: ['v*']
|
||||||
|
|
||||||
|
|
||||||
|
# Set registry to GitHub Container Registry
|
||||||
|
env:
|
||||||
|
REGISTRY: ghcr.io
|
||||||
|
IMAGE_NAME: ${{ github.repository }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
|
||||||
|
build-and-push-image:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
|
# Build steps
|
||||||
|
steps:
|
||||||
|
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Log in to the Container registry
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
registry: ${{ env.REGISTRY }}
|
||||||
|
username: ${{ github.actor }}
|
||||||
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Extract metadata (tags, labels) for Docker
|
||||||
|
id: meta
|
||||||
|
uses: docker/metadata-action@v4
|
||||||
|
with:
|
||||||
|
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||||
|
|
||||||
|
- name: Build and push Docker image
|
||||||
|
uses: docker/build-push-action@v4
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
push: true
|
||||||
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
|
labels: ${{ steps.meta.outputs.labels }}
|
19
Dockerfile
19
Dockerfile
@ -1,9 +1,18 @@
|
|||||||
FROM nginx:1.25.2-alpine3.18
|
FROM node:alpine
|
||||||
|
|
||||||
WORKDIR /usr/share/nginx/html
|
# Path to assets in container
|
||||||
|
WORKDIR /app
|
||||||
|
COPY . .
|
||||||
|
|
||||||
RUN wget -q -O honey.zip https://github.com/dani3l0/honey/releases/download/v2.1.1/honey-v2.1.1-stable.zip && unzip -q -o honey.zip && rm honey.zip
|
# Build honey
|
||||||
|
RUN npm install
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
EXPOSE 80
|
# Run a built-in webserver
|
||||||
|
CMD npm run preview
|
||||||
|
|
||||||
HEALTHCHECK CMD wget -nv --spider --tries=1 http://127.0.0.1:80
|
# Expose port
|
||||||
|
EXPOSE 4173
|
||||||
|
|
||||||
|
# Health check
|
||||||
|
HEALTHCHECK CMD wget -nv --spider --tries=1 http://127.0.0.1:4173
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "vite-project",
|
"name": "honey",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "0.0.0",
|
"version": "2.2.0",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
"build": "vite build",
|
"build": "vite build",
|
||||||
"preview": "vite preview"
|
"preview": "vite preview --host"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"vite": "^4.4.5"
|
"vite": "^4.4.5"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user