Version 1.3.0 - Ajout de Docker
This commit is contained in:
@@ -1,57 +0,0 @@
|
||||
name: Frontend Deployment
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
deploy-frontend:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up SSH
|
||||
run: |
|
||||
mkdir -p ~/.ssh
|
||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
||||
chmod 600 ~/.ssh/id_rsa
|
||||
ssh-keyscan -H alpha.raphix.fr >> ~/.ssh/known_hosts
|
||||
|
||||
- name: Deploy frontend
|
||||
run: |
|
||||
ssh raphix@alpha.raphix.fr "
|
||||
set -e;
|
||||
APP_DIR=/home/gitlab-ci/chopin-frontend;
|
||||
FRONTEND_DIR=/home/gitlab-ci/frontend/dist;
|
||||
REPO_URL=https://git.raphix.fr/subsonics/chopin-frontend;
|
||||
BRANCH=main;
|
||||
|
||||
echo '[Frontend-Deploy] - START';
|
||||
|
||||
# Nettoyage ancien dossier temporaire
|
||||
rm -rf \$APP_DIR;
|
||||
mkdir -p \$APP_DIR;
|
||||
|
||||
echo 'Cloning repository...';
|
||||
git clone -b \$BRANCH \$REPO_URL \$APP_DIR;
|
||||
|
||||
cd \$APP_DIR;
|
||||
|
||||
echo 'Installing dependencies...';
|
||||
npm ci;
|
||||
|
||||
echo 'Building app...';
|
||||
npm run build;
|
||||
|
||||
echo 'Deploying build to frontend/dist...';
|
||||
mkdir -p \$FRONTEND_DIR;
|
||||
rm -rf \$FRONTEND_DIR/*;
|
||||
cp -r dist/* \$FRONTEND_DIR/;
|
||||
|
||||
echo 'Cleaning up temporary build directory...';
|
||||
rm -rf \$APP_DIR;
|
||||
|
||||
echo '[Frontend-Deploy] - DONE';
|
||||
"
|
22
Dockerfile
Normal file
22
Dockerfile
Normal file
@@ -0,0 +1,22 @@
|
||||
FROM node:lts-alpine
|
||||
|
||||
# installe un simple serveur http pour servir un contenu statique
|
||||
RUN npm install -g http-server
|
||||
|
||||
# définit le dossier 'app' comme dossier de travail
|
||||
WORKDIR /app
|
||||
|
||||
# copie 'package.json' et 'package-lock.json' (si disponible)
|
||||
COPY package*.json ./
|
||||
|
||||
# installe les dépendances du projet
|
||||
RUN npm install
|
||||
|
||||
# copie les fichiers et dossiers du projet dans le dossier de travail (par exemple : le dossier 'app')
|
||||
COPY . .
|
||||
|
||||
# construit l'app pour la production en la minifiant
|
||||
RUN npm run build
|
||||
|
||||
EXPOSE 4001
|
||||
CMD [ "http-server", "dist" ]
|
16
docker-compose.yml
Normal file
16
docker-compose.yml
Normal file
@@ -0,0 +1,16 @@
|
||||
version: "3.9"
|
||||
|
||||
services:
|
||||
subsonics-frontend:
|
||||
build:
|
||||
context: . # dossier contenant ton Dockerfile et ton code
|
||||
dockerfile: Dockerfile
|
||||
container_name: subsonics-frontend
|
||||
ports:
|
||||
- "4001:4001"
|
||||
volumes:
|
||||
- subsonics-frontend:/app/dist
|
||||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
subsonics-frontend:
|
@@ -8,5 +8,14 @@
|
||||
</noscript>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.js"></script>
|
||||
<!-- Google tag (gtag.js) -->
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-G0X9BNYZ6W"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
function gtag(){dataLayer.push(arguments);}
|
||||
gtag('js', new Date());
|
||||
|
||||
gtag('config', 'G-G0X9BNYZ6W');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "chopin-frontend",
|
||||
"version": "1.2.0",
|
||||
"version": "1.3.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "vite --host --port 8080",
|
||||
|
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"discord": {
|
||||
"development": "https://discord.com/oauth2/authorize?client_id=1342913183744004158&response_type=code&redirect_uri=http%3A%2F%2F192.168.1.77%3A8080%2Fredirect&scope=identify",
|
||||
"development": "https://discord.com/oauth2/authorize?client_id=1342913183744004158&response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2Fredirect&scope=identify",
|
||||
"production": "https://discord.com/oauth2/authorize?client_id=1094727789682380922&response_type=code&redirect_uri=https%3A%2F%2Fsubsonics.raphix.fr%2Fredirect&scope=identify"
|
||||
},
|
||||
"backend": {
|
||||
"development": "http://192.168.1.77:3000",
|
||||
"development": "http://localhost:3000",
|
||||
"production": "https://backend.subsonics.raphix.fr"
|
||||
},
|
||||
"bot_invite": {
|
||||
|
Reference in New Issue
Block a user