본문 바로가기
반응형

Docker8

Docker - MAC M1 Error image's platform (linux/arm64/v8) does not match the detected host platform 해결 MAC M1으로 노트북을 변경하고 평시대로 Docker를 새로 빌드하여 플랫폼을 올렸는데 아래와 같은 오류가 발생하였다. WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and no specific platform was requested standard_init_linux.go:228: exec user process caused: exec format error 오류 내용은 MAC M1은 linux/arm64 플랫폼이 아니기 때문에 발생한 오류이다. 따라서 이를 해결하기 위해서는 빌드시점에 --platform linux/arm64을 지정하여 빌드를 .. 2022. 8. 7.
Docker - Error saving credentials: error storing credentials Error saving credentials: error storing credentials - err: exit status 1, out: `Post "http://ipc/registry/credstore-updated": dial unix backend.sock: connect: connection refused` Docker 로그인시 발생하는 오류로 처음 보는 거라 찾아보다가 해결 방안을 정리해 본다. 로그인 관련 인증키를 저장하는 부분을 초기화 해서 다시 진행해보는 방식이다. rm /usr/local/bin/docker-credential-osxkeychain 이후 ~/.docker/config.json 를 열어서 아래 그림처럼 "credsStore": ""로 수정 이후 Docker를 재시작후 다.. 2022. 7. 29.
Svelte - Docker + Nginx 를 이용한 배포하기 Svelte 배포시 Docker를 활용한 방법을 정리해보고자 한다. Svelte는 Build를 구성하였을때 최적화하여 Output을 만들어 주기 때문에 여기에 웹서비스를 함께 구성하면 효과적이다. 이때 함께 사용할 만한 옵션으로 Nginx가 효율성이 높다. 그럼 먼저 테스트 Application을 템플릿을 통해 구성하도록 하자. 이후 svelte-docker로 디렉토리를 이동한다. npx degit sveltejs/template svelte_test cd svelte_test 그리고 아래와 같이 중요 package.json와 package-lock.json 파일을 복사한다. 그리고 npm 설치 및 빌드를 통해 build 경로로 운영에 필요한 파일을 생성한다. 이후 nginx html 경로로 build를.. 2022. 7. 25.
닌텐도 스위치 - 도커를 통한 Nut-server NSP 서버 만들기 Switch 게임을 덤프한 경우 이를 중앙에서 게임 리스트를 관리하면서 호스팅할 수 있는 방법을NSP 게임을 간편하게 호스팅할 수 있는 방법에 대해서 정리해본다. Switch게임을 다운로드 받았다면, 해당 게임을 스위치나 다른 시스템에 올리기 위해서는 웹서버나 FTP등의 서비스 보다는 Switch전용인 Nut-server를 활용하는 것이 좋다. 아래는 Nut-server 프로젝트 Github 위치이다. GitHub - blawar/nut nutserver를 구성하는데 어려움은 없다. 다만 docker를 이용할 경우보다사전 구성없이 바로 활용이 가능하다. 먼저 docker 명령을 이용해서 nut-server image를 받는다. docker pull ramdockerapp/nut-server 그후 아래와 .. 2022. 4. 13.
Docker - exec, 컨테이너에 명령 실행, 세션 연결 Docker를 사용하다보면 실행중인 컨테이너에서 간단한 작업이 필요할 때가 있다. 이때 유용하게 사용할 수 있는 명령이 바로 exec 명령으로, 이 명령을 어떻게 사용할 수 있는지 간단히 알아보도록 하겠다. exec 명령은 현재 실행중인 컨테이너에 명령을 실행하게 해주는 명령으로 가장 기본적으로 아래 두가지 방식으로 사용된다. 명령 실행 가장 간편하게 사용할 수 있는 방법으로, docker exec를 통해 명령 실행이 가능하다. docker exec 아래와 같이 현재 경로를 확인하거나 간단하게 운영시 필요한 작업등이 가능하다. 필자 역시 주로 ps 명령을 이용해서 Docker 컨테이너 내 프로세스 상태를 확인하는 작업을 종종한다. 세션 연결 조금 더 많은 작업이 필요한 경우 세션을 직접 연결해서도 작업이.. 2022. 3. 24.
Docker - Logs 보기,삭제,관리 Docker 운영을 하다보면, logs 명령을 통해 운영 상태를 확인하는데, Log가 지속적으로 쌓이기 때문에 단기적으로 컨테이너를 운영하는게 아니라면 로그의 관리가 필요하다. 여기서는 가장 중요한 로그를 삭제하는 방법과, 로그를 주기적으로 관리하는 방법에 대해서 정리해 보고자 한다. 로그 보기 생성된 로그중 최신 로그를 -tail 옵션을 이용해서 확인할 수 있다. docker logs --tail 100 container-id 로그 삭제 현재 생성되어 잇는 로그를 지우는 명령은 아래명령을 통해서 진행할 수 있다. sudo sh -c 'truncate -s 0 /var/lib/docker/containers/*/*-json.log' 만약 로그 파일의 위치가 다른 경우 inspect 명령을 이용해서 Log.. 2022. 2. 8.
Dockerfile 작성하기 - 기본 Python Docker를 통한 배포의 유연성은 사용해 본 사람이라면 계속 사용할 수 밖에 없게 만든다. 특히 개발하던 코드를 서버에 배포하고자 할 때 과거 발생하는 서버의 환경 설정 문제와 서버 구성의 간편함을 제공함으로써 보다 안전하고 빠르게 배포를 완료할 수 있다. 가장 처음 Docker를 사용하고자 한다면 Dockerfile을 작성하여야 한다. 여기에서는 Dockerfile을 작성할 때 어떻게 구성할 수 있는지 기본적으로 사용되는 커멘드들에 대해서 알아보도록 하겠다. Dockerfile 작성 Dockerfile을 작성할 때에 다음과 같은 루트로 작성을 진행하는 것을 추천한다. 1. 필요 라이브러리 설치 2. 도커 실행에 필요한 파일 복사 3. 서버 환경 설정 4. 스크립트 실행 크게 위 4가지를 순서적으로 진.. 2021. 9. 22.
Docker - 파일 저장 위치 오늘 Docker 관련하여 중요한 여러가지를 다시 확인하는 시간을 같았다. 그중 Docker의 파일 저장 구조에 대해 보다 유심히 관심을 가지고 보게되었고 글중에 좋을 글이 있어 가져온다. https://www.freecodecamp.org/news/where-are-docker-images-stored-docker-container-paths-explained/#:~:text=The%20heaviest%20contents%20are%20usually,it%20that%20contains%20your%20changes. Where are Docker Images Stored? Docker Container Paths Explained Docker has been widely adopted and is u.. 2020. 11. 5.
반응형