Abstruct: Run Pulsar on a remove vscode (code-server), it help us:

  • Know better of pulsar with default Demo. New features play, communications with new clients and more.
  • It’s a share Dev enviroment, help us review code or repeat issues.
  • For example or dev hackathon.

    Run code-server in Azure

    Steps:
  1. pull codercom/code-server:4.1.0
  2. open port 8080 from Azure vm
  3. install plugin Extension Pack for Java and other plugins
  4. install openjdk11 in container, and configure JAVA_HOME
  5. test HelloWorld.java

    Pull and run code-server

    It keeps access locally if you run with -p 127.0.0.1:8080:8080, so port:port is fine.
    1. mkdir -p ~/.config
    2. docker run -it -d --name code-server -p 8080:8080 \
    3. -v "$HOME/.config:/home/coder/.config" \
    4. -v "$PWD:/home/coder/project" \
    5. -u "$(id -u):$(id -g)" \
    6. -e "DOCKER_USER=$USER" \
    7. codercom/code-server:4.1.0

    Open 8080 port from Azure vm

    image.png

    Install plugin Extension Pack for Java

    Search in pulgin view then install. It take minutes.

    install openjdk 11

    Install openjdk 11 in docker container [1].
    1. wget https://download.java.net/openjdk/jdk11/ri/openjdk-11+28_linux-x64_bin.tar.gz
    2. tar zxvf openjdk-11+28_linux-x64_bin.tar.gz
    3. docker cp jdk-11 55ebc1dcfc9a:/home/coder/
    Configure the JAVA_HOME in vim .bashrc:
    1. #### openjdk11 ####
    2. export JAVA_HOME="/home/coder/project/jdk-11"
    3. export JRE_HOME=$JAVA_HOME/jre
    4. export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    5. export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HOME/bin
    6. #### openjdk11 ####

    Test HelloWorld.java

    ```java // Your First Program

class HelloWorld { public static void main(String[] args) { System.out.println(“Hello, World!”); } }

  1. <a name="RHRvi"></a>
  2. ## Run pulsar in same VM
  3. <a name="Gx0lc"></a>
  4. ### Run pulsar
  5. ```shell
  6. docker run -d -it \
  7. -p 16650:6650 \
  8. -p 18080:8080 \
  9. --mount source=pulsardata,target=/pulsar/data \
  10. --mount source=pulsarconf,target=/pulsar/conf \
  11. apachepulsar/pulsar:2.9.1 \
  12. bin/pulsar standalone

Test pulsar using pular demo

examples: https://github.com/streamnative/examples
Test using pulsar-client

  1. # consume it
  2. bin/pulsar-client --url pulsar://10.6.0.4:16650/ consume \
  3. persistent://public/default/test \
  4. -n 100 \
  5. -s "consumer-test" \
  6. -t "Exclusive"
  7. # produce simple messages
  8. bin/pulsar-client --url pulsar://10.6.0.4:16650/ produce \
  9. persistent://public/default/test \
  10. -n 3 \
  11. -m "hello pulsar"

image.png

Run Pulsar StreamNativeCloud

Reference

[1] How to Install Java 11 & 12 on CentOS 7: https://phoenixnap.com/kb/install-java-on-centos
[2] Linux/x64 openjdk-11 tar.gz 安装 https://cloud.tencent.com/developer/article/1366744
[3] Java Online Compiler https://www.programiz.com/java-programming/online-compiler/
[4] Online IDE : https://vaadin.com/docs/latest/flow/guide/quick-start