튜토리얼을 따르기 위해 debian:wheezy에서 도커 이미지를 만들었습니다. 이 이미지는 많은 명령을 지원하지 않기 때문에 얼마나 유용한지 궁금합니다. 예를 들어:
"nc"뿐만 아니라 (목록이 길 수도 있음) vi, ps, apt, wget, dpkg...
저는 netcat 도구를 설치하고 결국 컨테이너에서 이 스크립트를 실행하는 방법을 찾고 있습니다.
#!/bin/sh
printf "Logging Mailer has started.\n"
while true
do
MESSAGE=$(nc -l -p 33333)
printf "[Message]: %s\n" "$MESSAGE" > $1
sleep 1
done
물론 이것은 작동하지 않습니다. 더 많은 명령을 지원하도록 이미지를 확장하는 방법에 대해 알고 계시나요? 감사합니다. 주제에서 벗어나지 않았으면 좋겠습니다.
답변1
두 가지 문제가 있습니다.
- 좋은 컨테이너 기본 이미지의 핵심은 애플리케이션에 필요한 모든 것을 구축할 수 있는 최소한이지만 실행 가능한 기반을 제공하는 것입니다.
- 예상대로 Wheezy 이미지에는 Wheezy 시대의 패키지가 포함되어 있습니다.
너~ 할 것이다다른 패키지를 설치하는 데 필요한 필수 요소를 찾으십시오. so dpkg
및 apt-get
둘 다 존재합니다. 이 apt
명령은 Wheezy에 존재하지 않으므로 사용할 수 없습니다. Wheezy는 여전히 관련이 있지만 apt-get update
(이미지에는 색인이 없으므로 크기를 줄이기 위해) 다음을 실행하여 추가 패키지를 설치할 수 있습니다 apt-get install ...
. 그러나 Wheezy 패키지 저장소를 더 이상 /etc/apt/sources.list
이미지 에서 사용할 수 없기 때문에 이 방법은 더 이상 작동하지 않습니다. 내부 참조의 위치를 얻습니다.
Wheezy 이미지를 수정하는 방법은 새로운 용도로 사용하면 안 되기 때문에 설명하지 않겠습니다. 지금 그것을 사용해야 합니다 debian:stretch
.