创建空的docker容器并在其中部署一些内容
我想创建一个空的docker容器,并使用chef、ruby或任何其他脚本语言在其中部署一些东西(Jenkins/Sonar) Dockerfile-创建空的docker容器并在其中部署一些内容,docker,chef-infra,docker-compose,dockerfile,docker-registry,Docker,Chef Infra,Docker Compose,Dockerfile,Docker Registry,我想创建一个空的docker容器,并使用chef、ruby或任何其他脚本语言在其中部署一些东西(Jenkins/Sonar) Dockerfile- FROM jenkinsci/jenkins:2.0-beta-1 USER root RUN mkdir /var/log/jenkins RUN mkdir /var/cache/jenkins RUN chown -R jenkins:jenkins /var/log/jenkins RUN chown -R jenkins:jenkins
FROM jenkinsci/jenkins:2.0-beta-1
USER root
RUN mkdir /var/log/jenkins
RUN mkdir /var/cache/jenkins
RUN chown -R jenkins:jenkins /var/log/jenkins
RUN chown -R jenkins:jenkins /var/cache/jenkins
USER jenkins
ENV JAVA_OPTS="-Xmx8192m"
Docker数据文件
FROM centos:7
# Create the jenkins user
RUN useradd -d "/var/jenkins_home" -u 1000 -m -s /bin/bash jenkins
# Create the folders and volume mount points
RUN mkdir -p /var/log/jenkins
RUN chown -R jenkins:jenkins /var/log/jenkins
VOLUME ["/var/log/jenkins", "/var/jenkins_home"]
USER jenkins
CMD ["echo", "Data container for Jenkins"]
我的问题-
我的文件是deloying Jenkins自动生成的,这不是特定于用户的。
请建议除DokCarfile之外的最佳方法。我认为最简单的方法是使用docker compose和官方Jenkins图像。 这里有一个
docker compose.yml
文件的模板,它可以作为一个很好的入口点:
jenkins:
image: 'library/jenkins:latest'
restart: always
environment:
JENKINS_OPTS: ""
JAVA_OPTS: ""
ports:
- '127.0.0.1:8080:8080'
volumes:
- '/var/jenkins_home:/var/jenkins_home'
你的问题令人困惑。是否要在容器中运行Chef来安装和配置Jenkins?或者您想使用Chef启动包含Jenkins的docker容器?@MarkO'Connor我想使用Chef/Shell/PS启动包含Jenkins/Sonar的Dokcer容器(根据用户特定)