본문 바로가기

LINUX

Docker arguments 처리시 유의점 Docker AGR 이용시 주의 점 이번 프로젝트에서 docker build 시 특정 값을 주입해서 사용하게 되었습니다. 아래와 같이 3개의 인자를 넘기는 build 실행 명령이 있을 경우, --build-arg을 이용해서 Dockerfile에서 사용할 인자를 전달 합니다. $ docker build --build-arg V_ACCOUNT_ID=${V_ACCOUNT_ID} --build-arg V_NEXUS_REGISTRY=${V_NEXUS_REGISTRY} --build-arg V_NEXUS_AUTH=${V_NEXUS_AUTH} -t ${V_CONTAINER_NAME}:${V_TAG_NAME} . Dockerfile에서 인자를 사용할때는 FROM 기준으로 선언 해야 합니다. Dockerfile 예제 #.. 더보기
Mac M1에서 Docker로 Mysql 실행하기 Mac M1에서 mysql을 실행하기 위해서 많이 검색을 해보았지만, 실제 동작되는 건 아래 명령어입니다. $ docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD= mysql/mysql-server:latest-aarch64 여러가지를 찾아봤지만, mysql/mysql-server:latest-aarch64 이 이미지가 확실하게 돌아가네요! 참고 자료 How to run MySQL in Docker using the M1 silicon chip, with no funny business. 더보기
Redhat Repository 설정하기 Redhat에서 CentOS Repository 설정하여 사용하기 Redhat을 설치하고 yum명령어를 사용하면 등록을 하라는 오류가 발생합니다. 등록을 하는 방식은 아래와 같이 3가지가 있습니다. Redhat 의 멤버쉽을 구독하여 사용 Local Repo 사용(ISO 파일 이용) CentOS Repo 사용(Redhat과 호환되어 사용 가능) 이 중에 CentOS Repo를 이용하는 방식을 간단하게 설명합니다. /etc/yum.repos.d/ 디렉토리 밑에 CentOS.repo 파일을 생성합니다. $ sudo vi /etc/yum.repos.d/CentOS.repo [BaseOS] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.or.. 더보기
redhat8에서 mysql 실행시 libtinfo.so.5 를 못 찾을때 확인 & 처리 mysql 실행시 오류 발생 mysql 설치 후 mysql 명령어를 실행시 아래와 같은 오류가 발생했습니다. $ mysql -u root -p ... libtinfo.so.5: cannot open shared object file: No such file or directory ... 필요한 모듈은 설치과정에서 모두 설치되었기에 인터넷 검색을 해보니 libncurses5가 아닌 최신 버젼인 libncurses6가 설치되어 발생한 문제입니다. 아래의 명령어로 설치된 버젼을 확인 할 수 있습니다. $ find /usr/lib/ -name *ncurses* /usr/lib/libncurses.so /usr/lib/libncurses++.so /usr/lib/libncurses++w.so /usr/lib/li.. 더보기
CentOS 에서 puppeteer 실행시 libxkbcommon.so.0를 못찾을때 처리 방법 CentOS 에서 puppeteer 실행시 libxkbcommon.so.0를 못찾을때 처리 방법 CentOS에서 node 기반의 puppeteer를 실생하 다음과 같은 오류를 만났다 발생 에러 로그 (node:16300) UnhandledPromiseRejectionWarning: Error: Failed to launch the brows er process! /applications/service/teamstokengen/node_modules/puppeteer/.local-chromium/linux -901912/chrome-linux/chrome: error while loading shared libraries: libxkbcommon.so.0: cannot open shared object f.. 더보기
Linux] find 명령어를 이용해서 오래된 디렉토리 중 1개만 지우기 오래된 디렉토리을 5개만 남겨놓고 지우고 싶을때 사용합니다. if [[ $(find /build/${PRJ_NAME}_* -type d | wc -l) -gt 5 ]] then find /build/${PRJ_NAME}_* -type d | head -n 1 | xargs rm -rf ficommand로 넣어도 되고, shell script로 사용해도 됩니다. :) 더보기
서버시간을 KST로 변경하기 서버시간을 KST로 변경하기 AWS의 ec2 서버를 생성하면 시간대가 UTC로 잡혀 있다. 이를 KST로 변경 하기 위해서는 다음 명령을 이용하면 된다. ubuntu@ip-0-0-0-0:~/timezone$ date Wed May 15 09:08:49 UTC 2019 ubuntu@ip-0-0-0-0:~/timezone$ cat /etc/localtime TZif2UTCTZif2�UTC UTC0 ubuntu@ip-0-0-0-0:~/timezone$ sudo rm /etc/localtime ubuntu@ip-0-0-0-0:~/timezone$ ubuntu@ip-0-0-0-0:~/timezone$ sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime ubuntu.. 더보기
vim upgrade or 업그레이드 내역 확인 하기! Vim과 Neovim 편집기에서 OS 명령어 실행 취약점 발견 2019.06.13 보안 연구원 Armin Razmjou는 최근 리눅스에서 가장 인기 있는 커맨드라인 텍스트 편집 유틸리티인 Vim과 Neovim에서 심각도 높은 임의 OS 명령 실행 취약점(CVE-2019-12735)을 발견 Vim 편집기 : 사용자들이 리눅스에서 텍스트, 스크립트, 문서를 포함한 파일을 생성하고, 열람하거나 수정할 수 있는 프로그램 Neovim 편집기 : 플러그인, GUI 등이 개선된 Vim 확장 버전 프로그램 이 취약점은 “modlines”를 처리하는 과정에서 발견됨+ modelines : 문서의 시작과 마지막 라인 근처에 파일의 제작자가 언급한 커스텀 설정 세트를 자동으로 찾아 적용하는 기능으로 기본으로 활성화되어 있음.. 더보기
vim upgrade 또는 업그레이드 내역 확인 하기! vim upgrade or 업그레이드 내역 확인 하기! Vim과 Neovim 편집기에서 OS 명령어 실행 취약점 발견 2019.06.13 보안 연구원 Armin Razmjou는 최근 리눅스에서 가장 인기 있는 커맨드라인 텍스트 편집 유틸리티인 Vim과 Neovim에서 심각도 높은 임의 OS 명령 실행 취약점(CVE-2019-12735)을 발견 Vim 편집기 : 사용자들이 리눅스에서 텍스트, 스크립트, 문서를 포함한 파일을 생성하고, 열람하거나 수정할 수 있는 프로그램 Neovim 편집기 : 플러그인, GUI 등이 개선된 Vim 확장 버전 프로그램 이 취약점은 “modlines”를 처리하는 과정에서 발견됨+ modelines : 문서의 시작과 마지막 라인 근처에 파일의 제작자가 언급한 커스텀 설정 세트를 .. 더보기
[CentOS]서버 시작시 서비스 함께 시작 하기 서버 시작시 서비스 시작 하기사용하는 웹 서비스를 서버가 재시작 되었을때, 자동으로 시작하고 싶을때 사용하는 방법이다.간단하가 스크립트를 /etc/rc.d/rc.local에 등록하면 서버가 재기동 되었을때, 해당 스크립트가 1회 동작을 한다.# 최초 한번은 rc.local에 실행권한을 줘야 한다. $> chmod +x /etc/rc.d/rc.local # 이후 rc.local 파일의 하단에 원하는 스크립트를 삽입 한다. $> vi /etc/rc.d/rc.local ... rc.local 파일 # 스크립트 추가 nohup java -jar /home/lahuman/hello.jar & > /dev/null ... 종료 # 재기동 후 테스트 $> reboot now ... 재기동 후 # 서비스 확인 $> p.. 더보기