반응형
스벨테 앱을 도커 컨테이너에 넣는 방법은?
제목이 모든 것을 말해준다. 나는 웹 개발에 매우 익숙하지 않다.
나는 를 사용하여 Svelte 앱을 만들었다. 이제 또는 를 사용하여 로컬로 실행합니다.
제가 알기로는 노드 서버이지만, 노드 서버를 적용하는 것은 그다지 효과적이지 않았습니다.
나는 이것에 대해 a를 찾았지만, 그것은 공식 템플릿의 a를 가리키는 대신 기존 Svelte 앱을 도킹하는 방법을 잘 설명하지 않는다.
앱 디렉터리에 을 배치할 수 있습니다(여기서 은):
FROM node:14-alpine
WORKDIR /usr/src/app
COPY rollup.config.js ./
COPY package*.json ./
RUN npm install
COPY ./src ./src
COPY ./public ./public
RUN npm run-script build
EXPOSE 5000
ENV HOST=0.0.0.0
CMD [ "npm", "start" ]
로컬 이미지 작성:
$ docker build -t svelte/myapp .
실행:
$ docker run -p 5000:5000 svelte/myapp
현재 및 사용. 최소화된 도커 이미지를 구축하려면 이 도커 파일 명령을 사용할 수 있습니다
도커 파일
FROM node:19 as build
ENV NODE_ENV=production
WORKDIR /app
COPY package.json ./
COPY package-lock.json ./
RUN npm install
COPY . ./
RUN npm run build
FROM node:19-alpine3.16
WORKDIR /app
COPY --from=build /app .
ENV HOST=0.0.0.0
EXPOSE 4173
CMD ["npm","run", "preview","--", "--host", "0.0.0.0"]
여기서, Vitejs 미리보기가 내가 사용한 이유이고 컨테이너 외부에 포트를 노출시킬 것이다. 내 경험 이미지는 작고 신뢰할 수 있는 Docker 이미지를 제공한다.
반응형
'개발하자' 카테고리의 다른 글
FastAPI에서 오리진 URL을 얻는 방법은? (0) | 2023.02.13 |
---|---|
파이썬 2.7 또는 파이썬 3.9에서 모두 사용할 수 없는 경우 파이썬에서 오픈 메쉬 및 이글 라이브러리를 사용하려면 어떻게 해야 합니까? (0) | 2023.02.12 |
Terraform GCP 서비스 계정에 IAM 역할 할당 (0) | 2023.02.11 |
Terraform S3 백엔드를 구성하는 동안 오류가 발생했습니다 (0) | 2023.02.10 |
Svelte - 스크롤에 네비게이션 숨기기 및 표시 (0) | 2023.02.10 |