찾다
운영 및 유지보수DockerDocker에서 소스 코드를 디버깅하는 방법은 무엇입니까?

Docker에서 소스 코드를 디버깅하는 방법은 무엇입니까?

Docker에서 소스 코드를 디버깅하는 방법은 무엇입니까?

Docker에서 소스 코드를 디버깅하는 방법:

Docker의 공식 컴파일 단계를 연구한 후 로컬 컴파일도 매우 간단하다는 것을 알았습니다. Docker 소스 코드 디렉터리에서 다음 명령만 실행하면 됩니다.

./hack/make.sh binary

위의 명령은 docker 바이너리 파일만 생성하지만 이 명령을 실행할 때 오류가 발견될 것입니다. 첫 번째 실행 중에 보고된 오류는 해당 go 종속성 패키지를 찾을 수 없다는 것입니다. 이제 첫 번째 문제인 의존성 패키지를 해결해 보겠습니다.

go 종속성 패키지를 해결하는 가장 직접적인 방법은 github이나 다른 곳에서 로컬로 하나씩 다운로드하는 것이지만, 이는 매우 번거로운 일입니다. Docker는 많은 go 언어 패키지에 의존하고, 종속 패키지는 다른 패키지에 의존할 수 있습니다. Go 언어 프로젝트 관리의 편리함이기도 한 간단하고 실용적인 방법이 있습니다. go get 명령을 사용하여 자동으로 다운로드합니다. 예를 들어 보고된 오류가 docker의 특정 디렉터리에 있는 종속 패키지인 경우 다음과 같이 실행할 수 있습니다.

go get -v ./src/github.com/docker/docker/...

이 명령이 실행된 후 해당 패키지는 의존하는 전체 docker 디렉토리의 소스 파일이 자동으로 다운로드됩니다. 다른 디렉터리의 소스 파일에서도 동일한 오류가 보고되는 경우 다음 방법에 따라 문제를 해결할 수 있습니다. 그러나 여기서 강조할 점은 이러한 다운로드는 최신 패키지를 다운로드한다는 점입니다. 기존 도커를 컴파일하면 분명히 문제가 있을 것입니다. 최신 도커 코드를 컴파일하면 공식 컴파일이므로 확실히 문제가 없습니다. 이쪽으로.

위에서 실행한 명령은 모두 Go 언어 환경이 성공적으로 구축된 것을 기반으로 합니다. 다음과 같이 /export/servers/go下面,然后所有的go语言工程源码目录放在 /export/servers/gopath。然后配置环境变量在用户的根目录下的.bashrc 파일에 설치됩니다.

export GOPATH=/export/servers/gopath
export GOROOT=/export/servers/go
export GOARCH=amd64
export GOOS=linux


추천 튜토리얼: "docker video tutorial"

위 내용은 Docker에서 소스 코드를 디버깅하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Linux 및 Docker : 다른 Linux 배포판의 DockerLinux 및 Docker : 다른 Linux 배포판의 DockerApr 19, 2025 am 12:10 AM

Ubuntu, Centos 및 Debian에 Docker를 설치하고 사용하는 방법은 다릅니다. 1) Ubuntu : APT 패키지 관리자를 사용하여 명령은 sudoapt-getupdate && sudoapt-getinstalldocker.io입니다. 2) Centos : Yum 패키지 관리자를 사용하면 Docker 저장소를 추가해야합니다. 이 명령은 SudoyuminStall-Yyum-utils && sudoyum-config-manager--add-repohttps : //download.docker.com/lin입니다

Docker 마스터 링 : Linux 사용자를위한 안내서Docker 마스터 링 : Linux 사용자를위한 안내서Apr 18, 2025 am 12:08 AM

Linux에서 Docker를 사용하면 개발 효율성을 향상시키고 응용 프로그램 배포를 단순화 할 수 있습니다. 1) Ubuntu 이미지를 당기기 : Dockerpullubuntu. 2) 우분투 컨테이너 실행 : Dockerrun-itubuntu/bin/bash. 3) nginx를 포함하는 dockerfile : fromubuntu; runapt-getupdate && apt-getinstall-ynginx; Expose80을 만듭니다. 4) 이미지를 빌드 : DockerBuild-tmy-nginx. 5) 컨테이너 실행 : Dockerrun-D-P8080 : 80

Linux의 Docker : 응용 프로그램 및 사용 사례Linux의 Docker : 응용 프로그램 및 사용 사례Apr 17, 2025 am 12:10 AM

Docker는 Linux의 응용 프로그램 배포 및 관리를 단순화합니다. 1) Docker는 응용 프로그램과 그 종속성을 경량 및 휴대용 컨테이너로 포장하는 컨테이너화 된 플랫폼입니다. 2) Linux에서 Docker는 CGroup 및 네임 스페이스를 사용하여 컨테이너 격리 및 리소스 관리를 구현합니다. 3) 기본 사용에는 이미지를 당기고 컨테이너를 실행하는 것이 포함됩니다. DockerCompose와 같은 고급 사용법은 다중 컨테이너 응용 프로그램을 정의 할 수 있습니다. 4) 일반적으로 사용되는 DockerLogs 및 DockerExec 명령 디버그. 5) 성능 최적화는 다단계 구성을 통해 이미지 크기를 줄일 수 있으며 Dockerfile을 단순하게 유지하는 것이 가장 좋은 방법입니다.

Docker : 이식성 및 확장 성을위한 컨테이너화 응용 프로그램Docker : 이식성 및 확장 성을위한 컨테이너화 응용 프로그램Apr 16, 2025 am 12:09 AM

Docker는 응용 프로그램을 패키지, 배포 및 실행하는 데 사용되는 Linux 컨테이너 기술 기반 도구입니다. 1) DockerBuild 및 Dockerrun 명령을 사용하여 Docker 컨테이너를 구축하고 실행할 수 있습니다. 2) DockerCompose는 마이크로 서비스 관리를 단순화하기 위해 멀티 컨테이너 Docker 응용 프로그램을 정의하고 실행하는 데 사용됩니다. 3) 다단계 구성을 사용하면 이미지 크기를 최적화하고 응용 프로그램 시작 속도를 향상시킬 수 있습니다. 4) 컨테이너 로그보기는 컨테이너 문제를 디버깅하는 효과적인 방법입니다.

Docker가 컨테이너를 시작하는 방법Docker가 컨테이너를 시작하는 방법Apr 15, 2025 pm 12:27 PM

Docker Container Startup 단계 : 컨테이너 이미지를 당기기 : "Docker Pull [Mirror Name]"을 실행하십시오. 컨테이너 생성 : "docker"[옵션] [미러 이름] [명령 및 매개 변수]를 사용하십시오. 컨테이너를 시작하십시오 : "Docker start [컨테이너 이름 또는 ID]"를 실행하십시오. 컨테이너 상태 확인 : 컨테이너가 "Docker PS"로 실행 중인지 확인하십시오.

Docker에서 로그를 보는 방법Docker에서 로그를 보는 방법Apr 15, 2025 pm 12:24 PM

Docker Logs를 보는 방법에는 다음이 포함됩니다. Docker Logs 명령 사용 : Docker Logs Container_name Docker Exec 명령을 사용하여 RUN /BIN /SH를 사용하여 로그 파일을 봅니다. cat /var/log/container_name.log docker-compose logs docker compose의 명령 : docker-compose -f docker-com 사용

Docker 컨테이너의 이름을 확인하는 방법Docker 컨테이너의 이름을 확인하는 방법Apr 15, 2025 pm 12:21 PM

단계를 따르면 Docker 컨테이너 이름을 쿼리 할 수 ​​있습니다. 모든 컨테이너 (Docker PS)를 나열하십시오. 컨테이너 목록을 필터링합니다 (GREP 명령 사용). 컨테이너 이름 ( "이름"열에 위치)을 가져옵니다.

Docker 용 컨테이너를 만드는 방법Docker 용 컨테이너를 만드는 방법Apr 15, 2025 pm 12:18 PM

Docker에서 컨테이너 만들기 : 1. 이미지를 당기기 : Docker Pull [Mirror Name] 2. 컨테이너 만들기 : Docker Run [옵션] [미러 이름] [명령] 3. 컨테이너 시작 : Docker Start [컨테이너 이름]

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경