- # First we download an image from the Docker universe
- # Ubuntu 16.04
- # And we will set the Maintainer to be the Eval Demo group
- FROM ubuntu:16.04
- MAINTAINER Eval Demo Group of Perforce Software
-
-
- # Next we need to ensure that the OS package index is updated and we need to
- # install some packages
- RUN apt-get update && apt-get install -y wget curl unzip dnsutils
-
- # We need to install some Helix packages. So need the public package key
- RUN wget -q https://package.perforce.com/perforce.pubkey -O - | apt-key add -
-
- # Add the Perforce repository to the list of package sources
- RUN echo 'deb http://package.perforce.com/apt/ubuntu trusty release' > /etc/apt/sources.list.d/perforce.list
-
- # Update the package index again
- RUN apt-get update
-
- # Install Helix Versioning Engine
- RUN apt-get install -y helix-p4d helix-cli
-
- # The Linux "perforce" user gets created when you install p4d. The following commands
- # sets a password for the perforce user. You may want to change it here so that your
- # installation is a little more secure.
- RUN echo perforce:perforce | /usr/sbin/chpasswd
-
- # Add the perforce user to the sudo group.
- RUN usermod -G sudo -a perforce
- RUN mkdir -p /home/perforce/perforce1666
- RUN usermod -d /home/perforce perforce
- RUN chown -R perforce:perforce /home/perforce
-
- # Setup a shared volume. This will only work when you have Shared folders enabled in
- # VMware Workstation or Fusion or VirtualBox. In VMware Fusion the Docker host VM will
- # need to be configured to mount the shared folder and then it will possible to mount th
- # shared folder in the container.
- # Be sure to correctly apply the correct shared folder name below
- # For example: mine is /Users/perforce/perforce1666 and it is mounted in the same location
- # in the container. However, this instruction only creates the mount point directory.
- # Nothing gets mounted until you perform a 'docker run' command with the '-v' parameter.
- # VOLUME ["/p4/1/"]
-
-
- # Expose port 1666 of the container. You will have to have port forwarding configured in
- # your VM environment.
- EXPOSE 1666
-
- # Create the Helix root directory and change ownership to the perforce user
- # WORKDIR /opt/perforce
- # RUN mkdir -p /opt/perforce/perforce1666
- RUN mkdir -p /p4/1/root
- RUN touch /p4/1/p4d.log
- RUN chown -R perforce:perforce /p4
-
- # Setup the server with a config file for p4dctl
- ADD ./main.conf /etc/perforce/p4dctl.conf.d/
- ADD ./start_p4d.sh /
- RUN chmod 755 /start_p4d.sh
- RUN chown perforce:perforce /start_p4d.sh
-
- # Set the basic environment for Helix
- ENV NAME="p4d" \
- P4CONFIG=".p4config" \
- P4ROOT="/p4/1/root" \
- P4PORT="1666" \
- P4USER="perforce" \
- PATH="/bin:/usr/bin:/usr/sbin:/usr/local/bin:/opt/bin:/opt/perforce/bin:" \
- P4LOG="/p4/1/p4d.log"
-
- USER perforce
- WORKDIR /home/perforce
-
- CMD ["/start_p4d.sh"]
-
-
# |
Change |
User |
Description |
Committed |
|
#1
|
27570 |
7ecapilot |
Moving to subdirectory of main |
4 years ago
|
|
//guest/7ecapilot/tw-public-docker-containers/main/Dockerfile |
#1
|
27568 |
7ecapilot |
Moving to Swarm project location |
4 years ago
|
|
//guest/7ecapilot/tw-public-docker-containers/helix-p4d/Dockerfile |
#1
|
23462 |
7ecapilot |
Adding simple Docker container definitions |
7 years ago
|
|