2022. 1. 2. 13:56ㆍDocker
PermissionError: [Errno 13] Permission denied: '/home/docker/app/gitlab/logs/gitlab-shell'
gitlab의 파일들은 root권한으로 생성되기 때문에 권한문제 발생하기 때문에 'sudo'로 실행해야 함
sudo docker build
sudo docker-compose build
WARNING: The GITLAB_HOME variable is not set. Defaulting to a blank string.
'sudo docker-compose build' 수행시 발생 : 신경 안써도 됨
ls: can't open '.': Permission denied
'docker exec -it 컨테이너 bash'로 들어갔는데, volume의 파일을 못보는 경우, selinux가 원인일 수 있음
volume 구성할때, 끝에 ":Z" 추가 필요
ERROR: Failed to load config stat /home/docker/.gitlab-runner/config.toml: no such file or directory builds=0
'docker exec -it 컨테이너 gitlab-runner register'를 통하여 runner를 등록하면 해결 됨
fatal: git fetch-pack: expected shallow list
https://teamsmiley.github.io/2020/09/17/git-fetch-pack-error/
centos7에서 사용하는 git 버전이 낮아서 생긴 문제 : root 권한으로 수행
yum remove git
yum -y install https://packages.endpoint.com/rhel/7/os/x86_64/endpoint-repo-1.7-1.x86_64.rpm
yum install git -y
git --version
Error response from daemon: rpc error: code = 14 desc = grpc: the connection is unavailable
docker swarm join --token 수행시 발생 : docker swarm 연동을 위한 manager 서버 포트가 막혀 있어서 발생
sudo firewall-cmd --add-port=2376/tcp --permanent
sudo firewall-cmd --add-port=2377/tcp --permanent
sudo firewall-cmd --add-port=7946/tcp --permanent
sudo firewall-cmd --add-port=7946/udp --permanent
sudo firewall-cmd --add-port=4789/udp --permanent
sudo systemctl restart firewalld
unknown flag: --iidfile
docker-compose build 수행시 에러 발생
근본적으로 docker 버전이 낮아서 생긴 문제 : docker -> docker-ce로 변경 필요
docker -v
Docker version 1.13.1, build 7d71120/1.13.1
docker stop 컨테이너명 : 나중에 'docker start 컨테이너명'이 작동하지 않아서 'docker rm 컨테이너명'으로 삭제함
yum remove -y docker-common
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
yum install -y docker-ce
systemctl start docker
systemctl start enable docker.service
docker -v
Docker version 20.10.12, build e91ed57
msr kernel module is not available
권한과 파일 접근 문제로 에러 발생
privileged: true
volumes:
- /lib/modules:/lib/modules
Error response from daemon: Get https://gitlab.example.com:5050/v1/users/: dial tcp 127.0.0.1:5050: connect: connection refused
# 내부 5050 포트를 외부에 열어 주어야 함
ports:
- '80:80'
- '443:443'
- '1122:1122' # ssh 포트 host의 22번과 충돌을 피하기 위함
- '5050:5050'
denied: requested access to the resource is denied
# 로그인이 먼저 되어야 함
docker login gitlab.example.com:5050
# 로그인을 했는데도발생하면, 계정명이 빠져서 그럴 수 있음
docker push gitlab.example.com:5050/계정명/이미지명:태그
WARNING: Checking for jobs... failed runner=Gyz4PEGg status=couldn't execute POST against http://gitlab/api/v4/jobs/request: Post "http://gitlab/api/v4/jobs/request": dial tcp: lookup gitlab on 127.0.0.11:53: no such host
gitlab-runner의 접속 url이 잘못되어서 생긴 문제 : docker-compose/bridge network에서는 문제 없었음'
docker stack deploy로 실행할때 문제가 됨
[[runners]]
name = "xmrig"
url = "http://gitlab/"
제대로된 url로 변경해야 함
[[runners]]
name = "xmrig"
url = "http://gitlab.example.co.kr/"
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
failed to start daemon: error while opening volume store metadata database: timeout
이것 저것 다 해봤는데, 해결 안되고 구찮아서, 지우고 그냥 다시 설치함
https://docs.docker.com/engine/install/centos/
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate \
docker-engine
sudo yum install -y yum-utils
sudo yum-config-manager -add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl enable docker
sudo systemctl start docker
Get "https://gitlab.example:5050/v2/": http: server gave HTTP response to HTTPS client
ssl 인증서 없으면, 예외처리 해야 함
sudo vi /etc/demon.json
{
"insecure-registries": ["gitlab.example:5050"]
}
sudo systemctl restart docker
No such image: gitlab.example.com:5050/abc/aaa:1.02
docker stack deploy 수행시, 배포될 서버에 이미지가 없어서 생긴 오류
https://docs.docker.com/engine/reference/commandline/stack_deploy/
docker stack deploy --with-registry-auth : 옵션을 추가하면 registry에서 다운받아서 진행함
그래도 안될 경우는 배포 대상 서버에서 registry에 접속이 되는지 확인 필요(daemon.json 셋팅 등)
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
docker ps 수행시 에러 발생
sudo systemctl start docker
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
sudo systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: failed (Result: start-limit) since 일 2022-01-23 23:36:36 KST; 13min ago
Docs: https://docs.docker.com
Process: 1632 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
Main PID: 1632 (code=exited, status=1/FAILURE)
sudo journalctl -u docker
failed to start daemon: Unable to get the TempDir under /var/lib/docker: mkdir /var/lib/docker/tmp: no space left on device
용량이 부족해서 정상적으로 작동안함
# 용량 증설(첫번째 참조로 해결함)
https://brandon-dev.tistory.com/m/22
용량이 '0'이라서 마지막에 적용이 안됨
해당 volume 에서 필요없는 로그들 삭제 후에 작업 진행하면 해결 됨(필요 없는 로그 삭제)
만든지 10일 경과한 로그 파일 삭제
find ./ -name '*.log.*' -mtime +10 -delete
ERROR: Preparation failed: ssh command Connect() error: ssh Dial() error: ssh: handshake failed: ssh: unable to authenticate, attempted methods [none password], no supported methods remain
https://docs.gitlab.com/runner/configuration/advanced-configuration.html
# runner에 private key 설정하지 않아서 에러 발생
sudo vi config.toml
# 아래 내용 추가
identity_file = "컨테이너 private key 파일위치"
Error: No such image: xxxx:xxxx
docker rmi xxxx:xxxx 수행시 에러 발생
관리자 권한으로 해당 이미지 정보 삭제
su
cd /var/lib/docker/image/overlay2/imagedb/content/sha256
docoker images -a
# 대상 이미지 정보의 'image id'로 삭제
rm -f ${image id}
# 서비스 재기동
# 나는 stop만 해도 자동으로 뜨는데, 왜 그러닞 모름
sudo service docker stop
sudo service docker start
'Docker' 카테고리의 다른 글
gitlab 명령어 (0) | 2022.01.09 |
---|---|
gitlab-runner 설치 (0) | 2022.01.02 |
Docker 명령어 (0) | 2022.01.02 |
Linux Docker 설치 (0) | 2021.12.31 |
InfluxDB 명령어 (0) | 2021.12.26 |