About
A Procfile 1) is a text file that maps:
- to a name
The command are executed by a manager used in the entrypoint
Example
- A Procfile with two commands:
web: bundle exec rails server -p $PORT
foo: /app/foo
- Docker and the overmind procfile manager
RUN apt-get update && \
apt-get install -y \
tmux \ # mandatory for overmind
wget
# ...
RUN set -ex \
&& wget -q https://github.com/DarthSim/overmind/releases/download/v2.0.0/overmind-v2.0.0-linux-amd64.gz \
&& gunzip overmind-v2.0.0-linux-amd64.gz \
&& chmod +x overmind-v2.0.0-linux-amd64 \
&& mv overmind-v2.0.0-linux-amd64 /usr/local/bin/overmind
ADD Procfile /app/
CMD overmind start
Syntax
name: <command>
where:
- name is a command name
Manager
Process Manager that supports proc file.
Overmind
Because it wraps tmux, you can get a terminal window on any of your running programs.
After connecting to your container via bash
cd /app
overmind connect foo
Foreman
The first one formean