programing

도커 무시:파일과 도커 파일을 제외한 모든 것을 무시합니다.

projobs 2023. 10. 1. 23:53
반응형

도커 무시:파일과 도커 파일을 제외한 모든 것을 무시합니다.

그래서 주요 의도는 지방병을 도커링하여 엘라스틱 빈스톡에 넣는 것이었습니다.문제는 상황에 있습니다.내가 필요로 하는 것이 단지 하나의 항아리 파일뿐이라면 도커에 그렇게 많은 맥락을 추가하는 것은 약간 바보 같은 일입니다.

.dockerignore 파일을 가지고 놀고 있었는데 길을 잃었습니다.나는 무시하는 부정을 사용하려고 했지만 작동이 되지 않습니다.

*
!Dockerfile
*/
!target/
target/*
!target/*.jar

regex가 있는 것도 있지만, 복잡한 regex는 지원되지 않는 것 같습니다.

^((?!Dockerfile).)*$

스택 오버플로에서도 검색을 시도했는데, 이 두 가지가 전부입니다.

이 질문은 두 번째 질문과 비슷할 수 있지만, 여기서는 상황에 하나의 파일을 포함하고 싶기 때문에 약간 다르다고 생각합니다.

어떤 도움이라도 주시면 감사하겠습니다.

일부 디렉토리 또는 파일을 제외한 모든 것을 무시하고 허용된 디렉토리 내의 불필요한 파일도 무시해야 한다면 다음을 사용할 수 있습니다..dockerignore파일:

# Ignore everything
*

# Allow files and directories
!/file.txt
!/src

# Ignore unnecessary files inside allowed directories
# This should go after the allowed directories
**/*~
**/*.log
**/.DS_Store
**/Thumbs.db

도커 파일 참조:

Go의 파일 경로를 넘어.일치 규칙, 도커는 임의 수의 디렉토리(0 포함)와 일치하는 특수 와일드카드 문자열 **도 지원합니다.예를 들어 **/*.go는 빌드 컨텍스트의 루트를 포함하여 모든 디렉토리에 있는 .go로 끝나는 모든 파일을 제외합니다.

따라서 단순히 **를 포함하는 행은 도커 파일과 같은 디렉토리에 있는 모든 것을 무시합니다.

예상대로 느낌표를 사용하여 도커 데몬으로 보낼 파일을 참조할 수 있습니다.

이것은 이상하게 들릴지도 모르지만, 필요한 것이 단지 하나의 항아리 파일이라면, 당신의 도커 파일이 들어 있는 "도커" 폴더를 당신의 빌드 시스템에 만들 수 있습니다.빌드를 실행할 때는 빌드 스크립트를 통해 단일 병 파일을 "도커"로 복사한 다음 ("도커" 폴더 안에서) 도커 이미지 빌드를 실행하고 완료되면 도커 레지스트리로 푸시합니다.

여기에 사용할 수 있는 샘플 파일이 있습니다..dockerignore

# Git
.git
.gitignore
.gitattributes


# CI
.codeclimate.yml
.travis.yml
.taskcluster.yml

# Docker
.docker
.dockerignore

# Byte-compiled / optimized / DLL files
**/__pycache__/
**/*.py[cod]

# C extensions
*.so

# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg

# PyInstaller
#  Usually these files are written by a python script from a template
#  before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.cache
nosetests.xml
coverage.xml

# Translations
*.mo
*.pot

# Django stuff:
*.log

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# Virtual environment
.venv/
venv/

# PyCharm
.idea

# Python mode for VIM
.ropeproject
**/.ropeproject

# Vim swap files
**/*.swp

# VS Code
.vscode/

*.log

언급URL : https://stackoverflow.com/questions/28097064/dockerignore-ignore-everything-except-a-file-and-the-dockerfile

반응형