https://docs.docker.com/get-docker/
docker -v
docker run hello-world
테스트 성공
docker ps -a
docker rm [컨테이너 ID]
docker images
docker rmi [이미지 ID]
docker run --name myjenkins -d -p 9080:8080 jenkins/jenkins
docker ps
docker exec -it myjenkins bash
cat /etc/issue
cat /var/jenkins_home/secrets/initialAdminPassword
exit
=> 위 명령어를 한번에
docker exec myjenkins cat /var/jenkins_home/secrets/initialAdminPassword
http://localhost:9080
접속 후 Admin PW 입력docker restart myjenkins
git clone [repo 주소]
cd [pjt name]
dir
cd [폴더명]
npm install
npm serve
FROM node:lts-alpine as build-stage
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
FROM nginx:stable-alpine as production-stage
COPY --from=build-stage /app/dist usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
docker build -t vue-app .
docker run -it -p 80:80 --rm --name vue-app-1 vue-app
rm은 컨테이너가 정지되면 자동으로 삭제되는 옵션 (임시 테스트용)
ctrl+C로 종료
`cd [폴더명]`
`mvnw package`
https://spring.io/guides/gs/spring-boot-docker/ 참고
FROM openjdk:8-jdk-alpine
RUN addgroup -S spring && adduser -S spring -G spring
USER spring:spring
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
gradle bootjar
build/libs 경로에 가보면 모든 의존성 라이브러리가 포함된 jar 파일을 확인 할 수 있다.
docker build -t springio/gs-spring-boot-docker .
docker run -p 8080:8080 springio/gs-spring-boot-docker
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=<pw> -e MYSQL_DATABASE=<name> -d mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
docker: Error response from daemon: Ports are not available: listen tcp 0.0.0.0:3306: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.
사용중인 포트 확인
netstat -ano | findstr 3306
포트 죽이기
taskkill /f /pid PID
Spring build : https://gusrb.tistory.com/71
Spring Dockerfile : https://spring.io/guides/gs/spring-boot-docker/
Vue Dockerfile : https://kdeon.tistory.com/6
DB: https://poiemaweb.com/docker-mysql