A Docker image for Pharo Smalltalk. Especially suitable for web application development and delivery.
- Pharo process is daemonized by supervisord.
- Debuggable via VNC.
docker run --name my_pharo -d -p 5900:5900 -p 6901:6901 mumez/pharo-vnc-supervisor
You can access the running pharo image via VNC client or web browser. (the default password is 'vncpassword')
- VNC client:
yourhost:5900
- Web browser:
http://yourhost:6901/?password=vncpassword
- Place your customized Pharo image to your docker-host data directory (For example,
$HOME/docker/pharo/data
). - Use
docker run
-v
option to mount the data direcotry.
docker run --name my_pharo -d -p 5900:5900 -p 6901:6901 \
-v=$HOME/docker/pharo/data:/root/data \
mumez/pharo-vnc-supervisor
You can use save-pharo
command to build a customized Pharo image.
save-pharo metacello <metacello command-line arguments>
REPOS_URL=github://mumez/Tarantalk/repository
docker run --rm -p 5900:5900 -p 6901:6901 \
-v=$HOME/docker/pharo/data:/root/data \
mumez/pharo-vnc-supervisor \
save-pharo metacello install $REPOS_URL BaselineOfTarantalk
save-pharo config <Metacello configuration>
docker run --rm -p 5900:5900 -p 6901:6901 \
-v=$HOME/docker/pharo/data:/root/data \
mumez/pharo-vnc-supervisor \
save-pharo config http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main/ \
ConfigurationOfNeo4reSt --install=stable
save-pharo get <Project name>
docker run --rm -p 5900:5900 -p 6901:6901 \
-v=$HOME/docker/pharo/data:/root/data \
mumez/pharo-vnc-supervisor \
save-pharo get Tarantube
By default, Pharo 11.0 will be installed to the docker image. You can specify other versions when building a docker image.
docker build -t pharo120-vnc-supervisor --build-arg PHARO_IMAGE_VERSION=120 .
docker run --name my_pharo120 -d -p 5900:5900 -p 6901:6901 pharo120-vnc-supervisor
You can change these settings via docker run
-e
option.
PHARO_SUPERVISOR_LOG_NAME=pharo-supervisord.log
PHARO_IMAGE=Pharo.image
PHARO_START_SCRIPT=
PHARO_MODE=gui
Please see ubuntu-vnc-supervisor.