DevOps

    언제부턴가 매우 비싸진 VPC 요금

    언제부턴가 매우 비싸진 VPC 요금

    전혀 나오지 않던 Virtual Private Cloud의 요금이 매우 커졌다. 나는 이 사실을 뒤늦게 알았고 비용 최적화에 들어갔다.  나는 AWS 관련 전문가가 아니라는 점, 상기드린다. 내가 해결을 위해 수행한 방법만 나열한다. 1. 알아보기 관련 AWS 공식 게시글은 다음과 같다.https://aws.amazon.com/ko/blogs/korea/new-aws-public-ipv4-address-charge-public-ip-insights/ 공지 – AWS Public IPv4 주소 요금 변경 및 Public IP Insights 기능 출시 | Amazon Web ServicesAWS에서 퍼블릭(Public) IPv4 주소에 대한 새로운 요금이 도입됩니다. 2024년 2월 1일부터 서비스 연결 ..

    [Ubuntu] screen 명령어 사용법

    [Ubuntu] screen 명령어 사용법

    설치 > apt update > apt install screen 확인 > screen --version 명령어 > screen --help Use: screen [-opts] [cmd [args]] or: screen -r [host.tty] Options: -4 Resolve hostnames only to IPv4 addresses. -6 Resolve hostnames only to IPv6 addresses. -a Force all capabilities into each window's termcap. -A -[r|R] Adapt all windows to the new display width & height. -c file Read configuration file instead of '...

    Ubuntu 20 MariaDB Conf Path

    Ubuntu 20.04 MariaDB 10.3.34 cnf 파일 위치 /etc/mysql/mariadb.conf.d/50-server.cnf vi /etc/mysql/mariadb.conf.d/50-server.cnf

    쿠버네티스 파드 강제 종료하기

    파드를 아무리 지우려고 시도를 해보아도, 종료되지 않는 문제가 생겼었습니다. > kubectl get pod NAME READY STATUS RESTARTS AGE ds-nginx-f5c4s 0/1 Terminating 0 44h > kubectl delete pod ds-nginx-f5c4s --grace-period 0 pod "ds-nginx-f5c4s" deleted ^C 아무리 시간이 지나도 삭제가 되지 않아 아래의 방법대로 해결하였습니다. > kubectl delete pod ds-nginx-f5c4s --grace-period 0 --force warning: Immediate deletion does not wait for confirmation that the running resourc..

    Apache2, Nginx SSL 인증서(with 체인키) 등록

    Apache2, Nginx SSL 인증서(with 체인키) 등록

    무료 인증서 (letsencrypt 와 같은) 만 이용을 하다가 처음으로 COMODO Sectigo 에서 60,000원 짜리 인증서를 구매하였습니다. 인증서가 발급이 되고, 파일을 받아서 보니 내용물 중 ChainCA 라는 폴더가 있고 체인 인증서 필수 라는 문서가 추가로 있었습니다. 무료 인증서를 이용할 때에는 체인같은건 못봤는데?!?! 하고 검색해보니 아주 잘 설명된 사이트를 발견하였습니다. https://xe1.xpressengine.com/tip/23021383 https://sir.kr/pg_tip/14429 http://archive.today/bGddI 설명과 간단한 보안 팁까지 친절하게 글쓰신 분이 설명을 잘 해놓으셨더라구요, 감사합니다 성공적!

    port binding error, An attempt was made to access a socket in a way forbidden by its access permissions

    port binding error, An attempt was made to access a socket in a way forbidden by its access permissions

    artisan serve 를 실행하려 하니 다음과 같은 오류가 발생하였다. 뭐지? 싶어서 명령어를 하나 더 입력하여 확인해본 결과.. netsh int ipv4 show excludedportrange protocol=tcp 100개 단위로 포트들이 7926 부터 8595 까지 점유가 되어 있었다... 추측으로는 wslv2 때문이지 않을까 싶다. resolve!

    No package ‘oniguruma’ found (PHP configure error Package requirements (oniguruma) were not met)

    RUN docker-php-ext-install zip mysqli pdo pdo_mysql mbstring Docker Image 를 Build 하던 도중 발생한 에러였다. RUN apt-get install libonig-dev 를 추가해준 후 해결됨

    NET5.0 으로 작성한 App CI/CD 구현하기 [2] - Github Action 을 이용한 DockerHub Push 자동화 하기

    NET5.0 으로 작성한 App CI/CD 구현하기 [2] - Github Action 을 이용한 DockerHub Push 자동화 하기

    본인의 프로젝트가 Github 에 올라와 있어야 합니다. 1. 작업할 Github repository Settings 으로 진입하여 Secrets 로 탭을 눌러줍니다. 2. New repository secret 버튼을 눌러줍니다. 3. 2개의 secret 를 만들어야 합니다. 아래의 secret name을 참고하여 Name 을 기입하고, Value 에는 DockerHub ID와 비밀번호를 기입하여줍니다. 4. {GithubRepositoryName}/.github/workflows/docker-publish.yml 생성 name: Docker on: push: branches: - master tags: - v* # master 로 푸시된 모든 것을 대상으로 실행하며, Docker 에서는 latest ..

    NET5.0 으로 작성한 App CI/CD 구현하기 [1] - Dockerfile 생성하기

    root 위치에 Dockerfile 파일을 생성해주고 아래와 같이 내용을 넣어줍니다. # builds our image using dotnet's sdk FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build WORKDIR /source # copy everything else and build app COPY . ./app/ WORKDIR /source/app RUN dotnet restore RUN dotnet publish -c release --runtime ubuntu.20.04-x64 -p:ImportByWildcardBeforeSolution=false -o /app -f net5.0 # runs it using aspnet runtime FROM mcr.micr..

    error during connect: Post .... LinuxEngine: The system cannot find the file specified. 에러 해결하기

    error during connect: Post .... LinuxEngine: The system cannot find the file specified. 에러 해결하기

    순간 에러를 보고 당황스러웠다. 처음 보는 에러였고, 검색을 해도 그다지 솔루션을 금방 찾을 수 없었다. 그리하여 생각을 하던 도중... Docker Desktop 이 실행되고 있지 않았다는 사실을 떠올렸다. 평소에 Docker 를 이용하지 않다보니 WSLv2 특성상 메모리를 과도하게 잡아먹어서 평소에는 Docker Desktop 을 꺼두고 있었다. Docker Desktop 실행 후 문제 해결.