<?xml version="1.0" encoding='utf-8'?>
<!-- 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
-->
<?xml-stylesheet type="text/xsl" href="https://rollerweblogger.org/roller-ui/styles/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom">
    <title type="html">Blogging Roller</title>
    <subtitle type="html">Dave Johnson on open web technologies, social software and software development</subtitle>
    <id>https://rollerweblogger.org/roller/feed/entries/atom</id>
        <link rel="self" type="application/atom+xml" href="https://rollerweblogger.org/roller/feed/entries/atom?tags=postgresql" />
    <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/" />
    <updated>2026-04-07T09:28:33+00:00</updated>
    <generator uri="http://roller.apache.org" version="6.1.5">Apache Roller</generator>
    <entry>
        <id>https://rollerweblogger.org/roller/entry/roller-6-snapshot</id>
        <title type="html">Roller&amp;#39;s new web UI</title>
        <author><name>Dave Johnson</name></author>
        <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/entry/roller-6-snapshot"/>
        <published>2019-01-21T15:59:00+00:00</published>
        <updated>2019-05-27T20:14:12+00:00</updated> 
        <category term="Roller" label="Roller" />
        <category term="asf" scheme="http://roller.apache.org/ns/tags/" />
        <category term="docker" scheme="http://roller.apache.org/ns/tags/" />
        <category term="postgresql" scheme="http://roller.apache.org/ns/tags/" />
        <category term="tomcat" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">&lt;p&gt;About three years ago I decided to modernize and improve the &lt;a href=&quot;http://roller.apache.org&quot;&gt;Apache Roller&lt;/a&gt; web UI by rewriting the JSP pages to use the &lt;a href=&quot;https://github.com/struts-community-plugins/struts2-bootstrap&quot;&gt;Struts 2 Bootstrap&lt;/a&gt; tags, which use Twitter&amp;#39;s &lt;a href=&quot;https://getbootstrap.com/docs/3.3/components/&quot;&gt;Bootstrap v3&lt;/a&gt; components and JavaScipt. I also wanted to replace all the HTML &lt;code&gt;table&lt;/code&gt;-based formatting with &lt;code&gt;div&lt;/code&gt;&amp;#39;s and Bootstrap, do a bunch of other improvements and make Roller&amp;#39;s web UI less clunky and annoying.&lt;/p&gt;

&lt;p&gt;Converting Roller&amp;#39;s eight-five JSP pages was a big task and I did not have much time for it. That&amp;#39;s why it took three years. Ironically, the Roller modernization project leaves Roller three years out of date. Still, I think it is a huge improvement over the Roller v5 web UI and I want to get it released in Roller v6. Currently, this work is available as &lt;a href=&quot;https://github.com/apache/roller/pull/22&quot;&gt;Pull Request #22&lt;/a&gt; and you can find some screenshots there too. Here&amp;#39;s one:&lt;/p&gt;

&lt;img src=&quot;https://rollerweblogger.org/roller/mediaresource/23986d06-37aa-48c1-8301-90419520953b&quot; alt=&quot;screenshot of Roller Edit Entry page&quot; style=&quot;max-width:30em;padding:1em;border:1px;&quot;&gt;

&lt;h4&gt;Try it with Docker-Compose&lt;/h4&gt;

&lt;p&gt;I also did some work to make it super-easy to try the Roller v6 snapshot pre-release for yourself, by using &lt;a href=&quot;https://docs.docker.com/compose/&quot;&gt;Docker Compose&lt;/a&gt;. You don&amp;#39;t have to fiddle with Tomcat or PostgreSQL. You can find a simple Dockerfile for running Roller v2 snapshot and a &lt;b&gt;docker-compose.yml&lt;/b&gt; file linked below. And you can find a Docker image in my &lt;a href=&quot;https://cloud.docker.com/u/snoopdave/repository/docker/snoopdave/roller&quot;&gt;DockerHub repo&lt;/a&gt;.&lt;/p&gt;

If you want to try Roller v6 snapshot, here&amp;#39;s what you need to do:

&lt;div style=&quot;margin-left:2em;&quot;&gt;
&lt;p&gt;&lt;b&gt;1&lt;/b&gt; - If you don&amp;#39;t aleady have it, install Docker&lt;/p&gt;

&lt;p&gt;&lt;b&gt;2&lt;/b&gt; - Create a directory on your computer where you want Roller to store it&amp;#39;s data.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;3&lt;/b&gt; - Save this file &lt;a href=&quot;https://github.com/apache/roller/blob/0e77733a4567ad19926ea81b6d7afb0de376b908/deployment/docker-compose/docker-compose.yml&quot;&gt;&lt;b&gt;docker-compose.yml&lt;/b&gt;&lt;/a&gt; to that new directory.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;4&lt;/b&gt; - Open a shell in that new directory and run:&lt;/p&gt;

       &lt;p&gt;&lt;pre&gt;docker-compose up&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;5&lt;/b&gt; - Watch the PostgreSQL and Roller startup logs scroll by&lt;/p&gt;

&lt;p&gt;&lt;b&gt;6&lt;/b&gt; - When the log scroll slows go to http://localhost:8080 to access Roller and go through the initial setup.&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;Alternatively, if you want to try Roller the hard way, you can get the regular-style v6 SNAPSHOT release files here &lt;a href=&quot;https://dist.apache.org/repos/dist/dev/roller/roller-6.0/v6.0.0/&quot;&gt;roller/roller-6.0/v6.0.0&lt;/a&gt;.&lt;p&gt;

&lt;h4&gt;Let us know how it goes&lt;/h4&gt;

&lt;p&gt;I hope you&amp;#39;ll give Roller v6 snapshot a try and let the project know how it can be improved for your use.  Send feedback to the Roller &lt;a href=&quot;https://cwiki.apache.org/confluence/display/ROLLER/Roller+Mailing+Lists&quot;&gt;mailing lists&lt;/a&gt; or ttweet at us at &lt;a href=&quot;https://twitter.com/apache_roller&quot;&gt;@apache_roller&lt;/a&gt;.&lt;/p&gt;

&lt;br&gt;&lt;/p&gt;&lt;/p&gt;</content>
    </entry>
    <entry>
        <id>https://rollerweblogger.org/roller/entry/powered-by-postgresql</id>
        <title type="html">Powered by Postgresql and Docker Swarm</title>
        <author><name>Dave Johnson</name></author>
        <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/entry/powered-by-postgresql"/>
        <published>2017-11-07T21:52:40+00:00</published>
        <updated>2017-11-07T21:58:47+00:00</updated> 
        <category term="Roller" label="Roller" />
        <category term="asf" scheme="http://roller.apache.org/ns/tags/" />
        <category term="docker" scheme="http://roller.apache.org/ns/tags/" />
        <category term="postgresql" scheme="http://roller.apache.org/ns/tags/" />
        <category term="swarm" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">It was somewhat painful but due to some problems with MySQL and Docker, and some general uneasiness with MySQL, I switched this site from MySQL v5.7 to &lt;a href=&quot;https://www.postgresql.org&quot;&gt;PostgreSQL&lt;/a&gt; v10. I also switched over to &lt;a href=&quot;https://docs.docker.com/engine/swarm/&quot;&gt;Docker Swarm&lt;/a&gt;. Here&amp;#39;s the Docker-Compose file that I&amp;#39;m using now to run this site:

&lt;pre&gt;
version: &amp;#39;3.2&amp;#39;

services:

   postgresql:
      image: &amp;quot;postgres:10.0&amp;quot;
      ports:
         - &amp;quot;5432:5432&amp;quot;
      deploy:
         resources:
           limits:
              memory: 50M
      volumes:
         - type: bind
           source: /var/lib/postgresql/data
           target: /var/lib/postgresql/data
      environment:
        - POSTGRES_USER=roller
        - POSTGRES_DB=rollerdb
        - POSTGRES_PASSWORD_FILE=/run/secrets/pg_passwd
      secrets:
        - source: db_passwd
          target: pg_passwd

   roller:
      image: &amp;quot;rwo:latest&amp;quot;
      ports:
        -  &amp;quot;80:8080&amp;quot;
      depends_on:
        - postgresql
      deploy:
         resources:
           limits:
              memory: 800M
      volumes:
        - type: bind
          source: /var/lib/roller
          target: /var/lib/roller
      environment:
        - DB_HOST=postgresql
        - STORAGE_ROOT=/var/lib/roller
        - JAVA_OPTS=&amp;quot;-Xmx700m&amp;quot;

secrets:
  db_passwd:
    file: ./db_passwd.txt
&lt;/pre&gt;

It was a pain, but sometimes pain = gain and I learned a lot. I&amp;#39;m hoping the site will be a bit more stable now. </content>
    </entry>
</feed>

