VScode 원격 컨테이너
용기의 주요 사용 상황은 소프트웨어를 생산 환경으로 운송하는 것이다. 생산 환경에서 Kubernetes 등 용기 조율기는 용기의 생명 주기(예를 들어 적재할 때 용기를 축소하는 것)를 관리한다.
용기의 두 번째 용례가 응용 프로그램을 개발하고 테스트하고 있습니다.개발자는 생산에서 파생된 이미지를 사용하고 필요한 도구를 추가해서 응용 프로그램을 개발하고 테스트한다.개발자와 클라우드 환경 간의 환경 마찰을 줄였기 때문이다. 그들은 비슷한 환경을 공유하기 때문에 조작 개발 과정 (DevOps) 을 쉽게 공유할 수 있다.
용기에 대한 경험이 있다면, 터미널에서 접근할 수 있는 경량급 가상 장치라는 것을 알 수 있습니다.따라서 컨테이너에서 개발하려면 다음을 수행할 수 있습니다.
설치하다.
먼저 VScode Remote-Containers라는 VScode 확장자를 설치합니다.
컨테이너 실행
Docker가 실행되면 다음 구성을 사용하여 컨테이너를 실행합니다.
docker run -it \
--name work --hostname work \
-v "$PWD:/work" --workdir /work \
alpine
마지막 명령을 실행하면 셸 알림이 나타날 것입니다. 이것은 현재 용기에 있다는 것을 의미합니다.다음 명령을 실행할 수 있습니다.uname-a 시스템 정보 표시
ps 보조 보기 프로세스
마운트하여 마운트된 파일 시스템 표시
nslookup-type = 호스트.부두 노동자.내부 ~ resolves the host
컨테이너에 VScode 연결
현재 실행 중인 컨테이너가 있는데 VScode를 사용하여 연결할 수 있습니다.
개발 환경 공유
Docker 컨테이너를 수동으로 생성하고 VScode를 통해 연결하는 방법을 보았습니다.그러나 VScode 원격 용기는 더 나아가 어떤 용기를 만들고 연결해야 하는지 파일에서 설명할 수 있도록 합니다.개발자json.
예를 들어 앞의 예시를 자동화하려면 GrunApp이라는 폴더를 만들고 그 안에 GrunApp이라는 파일이 포함되어 있어야 한다.개발자다음 항목을 포함하는 json:
{
"image": "ubuntu",
"extensions": [
"mutantdino.resourcemonitor"
]
}
VScode를 사용하여 이 파일을 포함하는 폴더를 열 때, 감지된 devcontainer 파일을 포함하는 용기에서 개발을 시작할지 묻는 알림을 볼 수 있습니다."용기에서 다시 열기"를 누르면 ubuntu에서 용기를 만들고 폴더를/workspace/gruntapp에 불러옵니다.보안 조치로서, 컴퓨터에서 무엇이든 실행할 수 있기 때문에devcontainer 파일을 보아야 합니다.
결론
우리는 VScode가 호스트에 전방이 있는 상황에서 서버를 용기에 설치함으로써 용기화를 실현하는 방법을 보았다.그것은 개발자 간의 마찰, 예를 들어 관계 관리에 의존하는 것을 줄일 수 있는 강력한 도구이다.이런 방법은 민주화되어 앞으로 10년 동안 하나의 표준이 될 것이다🔮.
VScode 원격 컨테이너도 docker compose와 함께 사용할 수 있습니다.
즐거움 코드🤓
유용한 힌트와 기교
Docker 볼륨
저장소를 컨테이너에 바인딩하고 VScode를 컨테이너에 연결했습니다.성능을 높이기 위해 코드를 용기에 넣을 수도 있고 (예:git clone,docker cp), 끊임없이 변화하는 용기에 코드를 저장할 수도 있습니다.
docker volume create example # create a volume named example
# run a container with the volume named example mounted at /example
docker run -it --rm -v example:/example -w /example alpine
# Inside the container, you can run `mount` to see the volume
echo '¯\_(ツ)_/¯' > x.txt
exit
# Start a ubuntu container
docker run -it --rm -v example:/example -w /example ubuntu
cat x.txt
VSCode CLI
코드를 사용하여 터미널에서 파일을 열 수 있습니다.
code file.txt
export EDITOR='code -w'
git commit과 kubectl edit 등의 명령을 사용할 때 VScode를 셸 편집기로 설정하는 것이 유용합니다.부두 노동자 공연
Docker 기본 설정으로 이동하여 Docker VM에 더 많은 CPU 및 RAM을 할당합니다.
macOS에서는 delegated 옵션을 사용하여 바인딩 마운트 성능을 향상시킬 수 있습니다.
docker 컨테이너에서 호스트 액세스
Docker for Desktop 기본값host.docker.internal은 컨테이너에서 호스트로 처리됩니다.이것은 호스트에서 실행되는 네트워크 서비스에 용기에서 접근할 수 있음을 의미합니다.그것도 쿠베르네트스를 해결했다.부두 노동자.Kubernetes가 활성화되어 있으면 내부입니다.
유용한 링크
Reference
이 문제에 관하여(VScode 원격 컨테이너), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ctison/vscode-remote-containers-5740텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)