chore(docker): it-tools docker container
This commit is contained in:
		
							parent
							
								
									b519cc9574
								
							
						
					
					
						commit
						3bc1f0d1fa
					
				
							
								
								
									
										56
									
								
								.github/workflows/docker-release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								.github/workflows/docker-release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,56 @@ | |||||||
|  | name: docker-release | ||||||
|  | 
 | ||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     branches: | ||||||
|  |       - 'main' | ||||||
|  | 
 | ||||||
|  | jobs: | ||||||
|  |   ci: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  | 
 | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v3 | ||||||
|  |       - run: corepack enable | ||||||
|  |       - uses: actions/setup-node@v3 | ||||||
|  |         with: | ||||||
|  |           node-version: 16 | ||||||
|  |           cache: 'pnpm' | ||||||
|  | 
 | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: pnpm i | ||||||
|  | 
 | ||||||
|  |       - name: Run linters | ||||||
|  |         run: pnpm lint | ||||||
|  | 
 | ||||||
|  |       - name: Run unit test | ||||||
|  |         run: pnpm test | ||||||
|  | 
 | ||||||
|  |       - name: Build the app | ||||||
|  |         run: pnpm build | ||||||
|  | 
 | ||||||
|  |   build: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     needs: | ||||||
|  |       - ci | ||||||
|  | 
 | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout | ||||||
|  |         uses: actions/checkout@v3 | ||||||
|  | 
 | ||||||
|  |       - name: Login to Docker Hub | ||||||
|  |         uses: docker/login-action@v2 | ||||||
|  |         with: | ||||||
|  |           username: ${{ secrets.DOCKERHUB_USERNAME }} | ||||||
|  |           password: ${{ secrets.DOCKERHUB_TOKEN }} | ||||||
|  | 
 | ||||||
|  |       - name: Set up Docker Buildx | ||||||
|  |         uses: docker/setup-buildx-action@v2 | ||||||
|  | 
 | ||||||
|  |       - name: Build and push | ||||||
|  |         uses: docker/build-push-action@v4 | ||||||
|  |         with: | ||||||
|  |           context: . | ||||||
|  |           file: ./Dockerfile | ||||||
|  |           push: true | ||||||
|  |           tags: corentinth/it-tools:latest | ||||||
							
								
								
									
										13
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,13 @@ | |||||||
|  | # build stage | ||||||
|  | FROM node:lts-alpine as build-stage | ||||||
|  | WORKDIR /app | ||||||
|  | COPY . . | ||||||
|  | RUN npm install -g pnpm | ||||||
|  | RUN pnpm i --frozen-lockfile | ||||||
|  | RUN pnpm build | ||||||
|  | 
 | ||||||
|  | # production stage | ||||||
|  | FROM nginx:stable-alpine as production-stage | ||||||
|  | COPY --from=build-stage /app/dist /usr/share/nginx/html | ||||||
|  | EXPOSE 80 | ||||||
|  | CMD ["nginx", "-g", "daemon off;"] | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user