Sign inSign up

t7tran/gcloud-pubsub-emulator

By t7tran

Updated almost 4 years ago

Google Cloud Pub/Sub Emulato

Image
0

859

t7tran/gcloud-pubsub-emulator repository overview

Docker Automated Build Docker Build Status Docker Pulls Docker Stars License

Google Cloud Pub/Sub Emulator Image

Cloud Pub/Sub is a global service for real-time and reliable messaging and streaming data

This image provides a dockerized version of the Google Cloud Pub/Sub Emulator. It is intended to be used as a service on development environments (it SHOULD NOT be used in production environments). You can check Cloud Pub/Sub documentation on Google Cloud Platform documentation website.

Usage

The following shell statement show the most simple execution of the provided image. It will execute the Pub/Sub Emulator that will listen on port 8538.

docker run --rm --tty --interactive --publish 8538:8538 --name pubsub t7tran/gcloud-pubsub-emulator:380.0.0

The image is much more useful when it is used in a CD/CI automated environment. The following example shows how to configure the Pub/Sub Emulator to be used in a Wercker development pipeline.

box: python:3.5

dev:
  services:
    - name: pubsub
      id: t7tran/gcloud-pubsub-emulator:380.0.0
      cmd: start --host-port 0.0.0.0:8538

  steps:
    - script:
      name: Define Pub/Sub environment variables
      code: |
        ADDR=$PUBSUB_PORT_8538_TCP_ADDR
        PORT=$PUBSUB_PORT_8538_TCP_PORT
        export PUBSUB_EMULATOR_HOST=$ADDR:$PORT

    - internal/shell:
      cmd: bash

Configuration

The most important configuration parameters of the Pub/Sub emulator image are the host/port value the server will listen on and the directory where data files will be placed. By default, the image is configured to listen on 127.0.0.1:8538 and store its files in the /data directory. This behavior can be changed by providing the correct command-line options.

The following example shows how to start the Pub/Sub emulator to listen on 192.168.1.3:12345 and to store its files in the /pubsub-data directory.

docker run --rm --tty --interactive --name pubsub t7tran/gcloud-pubsub-emulator:380.0.0 start --host-port=192.168.1.3:12345 --data-dir=/pubsub-data

NOTE: Wercker's documentation can be checked online on Wercker Documentation Website

Helpers

Assuming the above commands were used to launch the container, the following commands can be used. Just run the command to reveal its syntax.

docker exec -it pubsub publish # publish some data to a topic
docker exec -it pubsub pull # pull (await) message(s) from a subscription
docker exec -it pubsub pull-data # pull (await) data from a subscription
docker exec -it pubsub ack # acknowledge a message from a subscription
docker exec -it pubsub pull-ack # pull (await) data from a subscription then acknowledge upon receipt

Tag summary

Content type

Image

Digest

sha256:e5008ed1a

Size

567.8 MB

Last updated

almost 4 years ago

docker pull t7tran/gcloud-pubsub-emulator:406.0.0