cdbartholomew opened a new pull request #5420: [Issue 5415][docker 
build]Updating docker build for pulsar-standalone to use main dashboard sou…
URL: https://github.com/apache/pulsar/pull/5420
 
 
   This resolves issue #5415 but it does more than just that. It cleans up the 
build process for the pulsar-standalone Docker image to eliminate the need for 
a second copy of the dashboard files in the repo (which had already diverged 
significantly).
   
   I made the following changes:
   
   * Changed the docker build to use the dashboard files in the dashboard 
Docker image instead of a copy of those files that were in the build directory 
(`docker/pulsar-standalone`). That copy was very out of date with the master 
version (`dashboard`). The copy of the dashboard files also had a bug that was 
the cause of issue #5415.
   
   * I changed the build order so that the dashboard image is built before the 
pulsar-standalone image since the pulsar-standalone image now depends on the 
dashboard image. (This is pattern is used for the pulsar-all Docker image 
already).
   
   * I merged the changes from the dashboard copy and master. As it turns out 
all but one of the changes in the copy had already been made in the master, so 
this was a small change. However, it does mean the dashboard is now using v2 
REST endpoints exclusively. Previously it was using a mixture of v1 and v2.
   
   * I updated the pulsar-standalone image to redirect all the pulsar logs to 
stdout, which means they can be viewed using `docker logs` (and they won't fill 
up the volume), which is the "docker way" to do things. The logging options for 
the other components (nginx, collector, etc) are inherited from the dashboard 
image, which got to supervisor log files but are configured to not fill up the 
volume.
   
   * I deleted the duplicate conf and python files for the dashboard. All the 
files are single-sourced from the repo dashboard path. Since Docker doesn't let 
you reference files outside the Dockerfile path, the files are pulled from the 
latest dashboard image, which I've already mentioned.
   
   I have done many builds of the Docker images with these changes. I have 
confirmed:
   * the build completes successfully by running the build.sh command. (Full 
disclosure: I skipped the building of Pulsar clients and adding them to the 
main pulsar image to speed up my testing.) 
   * pulsar starts correctly in a pulsar-standalone container
   * the dashboard works in a pulsar-standalone container
   * the pulsar standalone logs display properly with the docker logs command 
on a running container
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to