Skip to content

devoldoak/revealjs-broadcast

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Docker image for building container of revealJS slides.

It includes :

  • Socket.IO : Broadcast your slideshow

How to use it?

Requirements

Get and install docket-toolbox : https://www.docker.com/products/docker-toolbox

Build your slideshow

  1. Download the subproject revealjs-workspace to get a project template

  2. Add slides (.html or .md) in ./slides folder

  3. Add images in ./images folder

  4. Configure docker-compose.yml to set

  • ports

    ports:
    # For Slide share
    - "**8080**:8080"
    # For Package download
    - "**8081**:8081"
    # ...
    ports:
    - "1948:1948" 
    • Volumes shared
    volumes:
    - **/c/Users/revealjs-builder/slides*:/project-builder/resources/slides
    - **/c/Users/revealjs-builder/images**:/project-builder/assets/site/images

    For Windows Users configure your shared volumes starting /c/Users/revealjs-builder (/c/Users is the only folder which can be shared) (symlink doesn't work too). So you have to move your slides and images folder to a subdirectory of C:\Users and configure it inside yml file.

    For Linux/Unix Users path can be relative

    • Docker Host IP in order to connect your browser script to container backend for socketio broadcasting
    environment:
    # To configure for broadcasting : server host for containers
    - DOCKER_HOST_IP=192.168.99.100
    # Must match with your socket io port exposed
    - DOCKER_HOST_PORT_SOCKETIO=1948
  1. Create and run the new container from the command line in the workspace folder
docker-compose up
  1. Open your browser to http://$(your_docker_host):$(your_port_mapping_for_8080_in_configuration_file)/. Adapt your slides, the browser will be automatically updated.

Share your slideshow

  1. Get built package from http://$(your_docker_host):$(your_port_mapping_for_8081_in_configuration_file)/package.zip

  2. Extract it and set your settings by editing docker-compose.yml :

  • Ports
ports:
- "**80**:80"   
# ...
ports:
- "**1948**:1948" 
  • Environment variables
environment:
- MASTER_PASSWORD=yourmasterpassword

MASTER_PASSWORD is your password for master acces to slides

  • You can configure docker to use an existing socketio container by commenting socketio service and replacing existing link with external_links
  1. Build and run containers by running from your command line (inside your extracted folder)
docker-compose build
docker-compose up
  1. Access to your master presentation with http://$(your_docker_host):$(your_port_mapping_for_80_in_configuration_file)/master.html

User is 'master', Password had been set in yout docker-compose.yml

Client access http://$(your_docker_host):$(your_port_mapping_for_80_in_configuration_file)/client.html is public

How to sort slides

Slide order in ./slides folder controls slide order in the slideshow. It is an alphabetical order.

You can prefix your filename with numeric values (ex: "001 - ") to organize it by yourself.

Slide Syntax

HTML Syntax

Refer to : https://github.com/hakimel/reveal.js/tree/3.3.0#markup

Markdown Syntax

Refer to : https://github.com/hakimel/reveal.js/tree/3.3.0#markdown

This is the configuration set for mardown separator :

  • Slide separator : ---
  • Slide vertical separator : --
  • Slide note : Note:

Releases

No releases published

Packages

No packages published