Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mumez/pharo-vnc-supervisor

A Docker image for Pharo Smalltalk. Especially suitable for web application development and delivery.
https://github.com/mumez/pharo-vnc-supervisor

docker pharo seaside supervisord vnc web-application

Last synced: about 1 month ago
JSON representation

A Docker image for Pharo Smalltalk. Especially suitable for web application development and delivery.

Awesome Lists containing this project

README

        

# pharo-vnc-supervisor

A Docker image for [Pharo Smalltalk](http://www.pharo-project.org/ "Pharo"). Especially suitable for web application development and delivery.

- Pharo process is daemonized by supervisord.
- Debuggable via VNC.

## Usages

```bash
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`

### How to start with a customized Pharo image

1. Place your customized Pharo image to your docker-host data directory (For example, `$HOME/docker/pharo/data`).
2. Use `docker run` `-v` option to mount the data direcotry.

```bash
docker run --name my_pharo -d -p 5900:5900 -p 6901:6901 \
-v=$HOME/docker/pharo/data:/root/data \
mumez/pharo-vnc-supervisor
```

### How to build a customized Pharo image in a container

You can use `save-pharo` command to build a customized Pharo image.

#### Install by Metacello

`save-pharo metacello `

```bash
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
```

#### Install by Configuration

`save-pharo config `

```bash
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
```

#### Install from Catalog (Obsolete - available before Pharo 6)

`save-pharo get `

```bash
docker run --rm -p 5900:5900 -p 6901:6901 \
-v=$HOME/docker/pharo/data:/root/data \
mumez/pharo-vnc-supervisor \
save-pharo get Tarantube
```

### How to change default Pharo image version

By default, Pharo 11.0 will be installed to the docker image. You can specify other versions when building a docker image.

```bash
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
```

## Settings

You can change these settings via `docker run` `-e` option.

### Pharo related environment variables

```bash
PHARO_SUPERVISOR_LOG_NAME=pharo-supervisord.log
PHARO_IMAGE=Pharo.image
PHARO_START_SCRIPT=
PHARO_MODE=gui
```

### VNC related environment variables

Please see [ubuntu-vnc-supervisor](https://github.com/mumez/ubuntu-vnc-supervisor).