전체 글 썸네일형 리스트형 AWS EC2에서 NGINX 애플리케이션을 Docker 이미지로 빌드하고 Docker Hub에 업로드하는 방법 AWS EC2에서 NGINX 애플리케이션을 Docker 이미지로 빌드하고 Docker Hub에 업로드하는 방법1. AWS EC2 인스턴스 설정Docker 설치Git 설치전체 워크플로더보기---vim deploy.ymlname: Build, Deploy, and Health Check NGINX Applicationon: push: branches: - mainenv: AWS_REGION: us-east-1 SECURITY_GROUP_ID: sg-07f3e EC2_CONTAINER_BASE_DIR: "/app/docker-container" APPLICATION_PORT: 80 DOCKER_IMAGE_NAME: springboot-appjobs: build: name: Bu.. 더보기 Docker 실험적 기능(Docker Experimental Features) Docker에서 실험적 기능(Experimental Features)을 활성화하고 확인하는 방법실험적 기능이 활성화되었는지 확인docker version -f '{{.Server.Experimental}}'Docker 설정 확인(daemon.json)cat /etc/docker/daemon.json1. 실험적 기능 활성화echo '{ "experimental": true}' | sudo tee /etc/docker/daemon.json2. Docker 데몬 재시작sudo systemctl restart docker3. 실험적 기능 확인더보기더보기---docker info---docker version -f '{{.Server.Experimental}}'true실험적 기능 사용 예시실험적 기능을 활성.. 더보기 Spring Boot 애플리케이션을 Docker 이미지로 빌드하고 Docker Hub에 배포한 뒤 AWS EC2에 배포하는 방법 Spring Boot 애플리케이션을 Docker 이미지로 빌드하고 Docker Hub에 배포한 뒤 AWS EC2에 배포하는 방법이 GitHub Actions 워크플로는 Spring Boot 애플리케이션을 Docker 이미지로 빌드하고 Docker Hub에 배포한 뒤 AWS EC2에 배포하고 헬스 체크를 수행합니다.주요 작업Build: Docker 이미지 빌드 및 Docker Hub 푸시Deploy: AWS EC2 서버에 Docker 이미지 배포Health Check: 배포된 애플리케이션의 상태 확인전체 워크플로더보기---vim deploy.ymlname: Deploy Spring Boot Applicationon: push: branches: - mainenv: AWS_REGION: u.. 더보기 MySQL 데이터베이스 마이그레이션하는 방법 MySQL 데이터베이스 마이그레이션하는 방법MariaDB 10.3.28(RackTables 0.21.4)에서 MySQL 8.0.40(RackTables 0.22.0)으로 마이그레이션하는 방법입니다.기존 시스템 백업(필수)데이터베이스 백업mysqldump를 사용하여 MariaDB 데이터베이스를 백업합니다. 모든 테이블과 데이터를 포함하는 전체 백업을 수행하는 것이 좋습니다.mysqlpump -u [사용자명] -p[비밀번호] [원본_데이터베이스명] > backup.sqlmysqldump -u root -p'your_mariadb_password' racktables_db > racktables_db_backup.sqlRackTables 파일 백업RackTables 설치 디렉터리 전체를 백업합니다.tar -c.. 더보기 우분투에서 RackTables를 설치하는 방법 우분투 24.04에서 RackTables를 설치하는 방법RackTables는 데이터센터 자산 관리 및 데이터베이스 관리를 지원하는 오픈 소스 도구입니다.테스트 환경웹 서버 : Nginx 1.26미들웨어 서버 : PHP 8.3데이터베이스 : MySQL 8.01. 필수 패키지 설치RackTables에 필요한 의존성 패키지를 설치합니다.sudo apt updatesudo apt install -y unzip wget graphvizNginx 설치sudo apt-get install -y curl gnupg2 ca-certificates lsb-releasesudo apt-get install -y ubuntu-keyring apt-transport-httpscurl -s https://nginx.org/key.. 더보기 우분투에서 Logrotate를 설정하는 방법 우분투에서 Logrotate를 설정하는 방법Logrotate는 로그 파일의 크기 증가를 방지하고 디스크 공간을 효율적으로 관리하기 위해 로그 파일을 주기적으로 압축, 이동, 삭제하는 도구입니다.1. Logrotate 기본 구조 이해Logrotate는 기본 설정 파일과 개별 설정 파일을 사용합니다.기본 설정 파일 : /etc/logrotate.conf개별 애플리케이션 설정 파일 : /etc/logrotate.d2. Logrotate 기본 설정 파일 확인/etc/logrotate.conf 파일은 시스템 전체에 적용되는 기본 정책을 정의합니다.cat /etc/logrotate.conf# see "man logrotate" for details# global options do not affect precedi.. 더보기 우분투에서 python 명령어를 사용할 수 있도록 설정하는 방법 우분투에서 python 명령어를 사용할 수 있도록 설정하는 방법테스트 환경$ lsb_release -dDescription: Ubuntu 24.04.1 LTS시스템에 python 명령어가 설정되어 있지 않다는 메시지 출력$ python --versionCommand 'python' not found, did you mean: command 'python3' from deb python3 command 'python' from deb python-is-python31. 기본 설치 확인우분투에서는 기본적으로 python3가 설치되어 있습니다. 하지만 python 명령어는 별도로 설정하지 않으면 사용할 수 없습니다. python3가 설치되어 있는지 확인합니다.python3 --versionPython.. 더보기 Docker 이미지를 효율적으로 빌드하기 위한 방법 Docker 이미지를 효율적으로 빌드하기 위한 방법Multi-Stage Build vs BuildKit항목Multi-Stage BuildBuildKit주요 목적불필요한 파일 제거, 경량 이미지 생성빌드 성능 및 유연성 향상활용 방식Dockerfile에 여러 스테이지 정의Docker 엔진 빌드 옵션 활성화멀티플랫폼 지원기본 지원 안 함--platform 옵션으로 멀티플랫폼 빌드캐싱 최적화제한적고급 캐싱 기능 제공비밀 관리지원 안 함비밀 파일 안전 전달 가능spring initializr(link)소스 파일(demo)$ lsDockerfile HELP.md build.gradle gradle gradlew gradlew.bat settings.gradle srcMulti Stage Build (.. 더보기 이전 1 ··· 20 21 22 23 24 25 26 ··· 298 다음