snibox / snibox

Self-hosted snippet manager

Home Page:https://snibox.github.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Broke after docker upgrade?

DeviantEng opened this issue · comments

I've been running Snibox in a Docker Stack for a while, and it has been working great. Recently upgraded, pulled a new version of snibox docker, and now it's not working. Here is my stack file:

version: '3'

services:
  frontend:
    image: snibox/nginx-puma:1.15.9
    ports:
      - '15001:80'
    volumes:
      - '/tank_data_02/docker/snibox/app-data:/var/www/html'
      - '/tank_data_02/docker/snibox/app-config:/etc/nginx/conf.d'
    networks:
      - default
    depends_on:
      - backend

  backend:
    image: snibox/snibox:latest
    command: sh -c "rm -rf tmp/pids && ./bin/rails s -p 3000 -b '0.0.0.0'"
    environment:
      DB_NAME: sniboxdb
      DB_USER: sniboxusername
      DB_PASS: sniboxpassword
      DB_HOST: database
      DB_PORT: 5432
      FORCE_SSL: 0
      SECRET_KEY_BASE: "c3180ae9068a68262e4be714c8326db75779e2cc2aa4c89e074d3c10af867ca5c696949ac2bbfe6254d9f0e57e62316419cff0766b37e9d51511458cba8d9ba9"
    volumes:
      - '/tank_data_02/docker/snibox/app-data:/app/public'
    networks:
      - default
    depends_on:
      - database

  database:
    image: postgres:10.7-alpine
    environment:
      POSTGRES_USER: sniboxusername
      POSTGRES_PASSWORD: sniboxpassword
      POSTGRES_DB: sniboxdb
    volumes:
      - '/tank_data_02/docker/snibox/db-data:/var/lib/postgresql/data'
    networks:
      - default
      
networks:
  default:
    driver: overlay
    ipam:
      config:
        - subnet: 10.0.17.0/24

When I browse to the web, I get the follow:

We're sorry, but something went wrong.
If you are the application owner check the logs for more information.

Log file:

/app/log # cat production.logI, [2019-07-24T20:38:15.896568 #1]  INFO -- : [1c2beab0-0964-4b26-856d-aa0bae43ad2e] Started GET "/" for 10.0
.17.20 at 2019-07-24 20:38:15 +0000I, [2019-07-24T20:38:15.897380 #1]  INFO -- : [1c2beab0-0964-4b26-856d-aa0bae43ad2e] Processing by Repository
Controller#index as HTMLI, [2019-07-24T20:38:15.904096 #1]  INFO -- : [1c2beab0-0964-4b26-856d-aa0bae43ad2e] Completed 401 Unauthoriz
ed in 7msI, [2019-07-24T20:38:16.016982 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65] Started GET "/login" for
 10.0.17.20 at 2019-07-24 20:38:16 +0000I, [2019-07-24T20:38:16.017480 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65] Processing by SessionsCo
ntroller#new as HTMLI, [2019-07-24T20:38:16.094165 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]   Rendering devise/sessi
ons/new.html.erb within layouts/applicationI, [2019-07-24T20:38:16.100256 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]   Rendered devise/shared
/_links.html.erb (1.0ms)
I, [2019-07-24T20:38:16.100331 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]   Rendered shared/_auth_form.html.erb (4.3ms)I, [2019-07-24T20:38:16.100411 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]   Rendered devise/sessio
ns/new.html.erb within layouts/application (6.1ms)
I, [2019-07-24T20:38:16.102690 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]   Rendered shared/_apple
_touch_icons.html.erb (1.1ms)
I, [2019-07-24T20:38:16.102872 #1]  INFO -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65] Completed 500 Internal S
erver Error in 85ms (ActiveRecord: 41.4ms)
F, [2019-07-24T20:38:16.103431 #1] FATAL -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]
F, [2019-07-24T20:38:16.103476 #1] FATAL -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65] ActionView::Template::Er
ror (Webpacker can't find media/images/apple-touch-icons/apple-touch-icon.png in /app/public/packs/manifest.j
son. Possible causes:
1. You want to set webpacker.yml value of compile to true for your environment
   unless you are using the `webpack -w` or the webpack-dev-server.
2. webpack has not yet re-run to reflect updates.
3. You have misconfigured Webpacker's config/webpacker.yml file.
4. Your webpack configuration is not creating a manifest.
Your manifest contains:
{
  "common.css": "/packs/common-4dee8b73.css",
  "common.css.map": "/packs/common-4dee8b73.css.map",
  "common.js": "/packs/common-401986dba63170ed9376.js",
  "common.js.map": "/packs/common-401986dba63170ed9376.js.map",
  "images/apple-touch-icons/apple-touch-icon-114x114.png": "/packs/images/apple-touch-icons/apple-touch-icon-114x114-0039bf72858b8812206b597d671af473.png",
  "images/apple-touch-icons/apple-touch-icon-120x120.png": "/packs/images/apple-touch-icons/apple-touch-icon-120x120-6c550393f7efb4ed6308f92423da86d0.png",
  "images/apple-touch-icons/apple-touch-icon-144x144.png": "/packs/images/apple-touch-icons/apple-touch-icon-144x144-2f83a9c33daf78ab1f49b6cdaeeaf0ed.png",
  "images/apple-touch-icons/apple-touch-icon-152x152.png": "/packs/images/apple-touch-icons/apple-touch-icon-152x152-ff5fc55912a6701d6331d5b368005b14.png",
  "images/apple-touch-icons/apple-touch-icon-180x180.png": "/packs/images/apple-touch-icons/apple-touch-icon-180x180-7a1b972874873a6817dbf6438b8ee724.png",
  "images/apple-touch-icons/apple-touch-icon-57x57.png": "/packs/images/apple-touch-icons/apple-touch-icon-57x57-f3ed405f811b1de171f2525f7fc6339d.png",
  "images/apple-touch-icons/apple-touch-icon-72x72.png": "/packs/images/apple-touch-icons/apple-touch-icon-72x72-8319c71d9d4a6271120187e86c435576.png",
  "images/apple-touch-icons/apple-touch-icon-76x76.png": "/packs/images/apple-touch-icons/apple-touch-icon-76x76-7439a05e81b3e8368ede13edf031a65f.png",
  "images/apple-touch-icons/apple-touch-icon.png": "/packs/images/apple-touch-icons/apple-touch-icon-f3ed405f811b1de171f2525f7fc6339d.png",
  "images/favicon.ico": "/packs/images/favicon-8d88446ecc03d86950d9743f1bd58cce.ico",
  "images/logo.png": "/packs/images/logo-1b2fb78596f1922fd8accea101b8dcee.png",
  "navbar.js": "/packs/navbar-7998a8c79d331847c7b0.js",
  "navbar.js.map": "/packs/navbar-7998a8c79d331847c7b0.js.map",
  "page.js": "/packs/page-a77d69d030ef5d3745b4.js",
  "page.js.map": "/packs/page-a77d69d030ef5d3745b4.js.map",
  "repository.js": "/packs/repository-19832d6196aeac6c6497.js",
  "repository.js.map": "/packs/repository-19832d6196aeac6c6497.js.map",
  "vendor.js": "/packs/vendor-b0910d4d1d216e7ca7a9.chunk.js",
  "vendor.js.map": "/packs/vendor-b0910d4d1d216e7ca7a9.chunk.js.map"
}
):
F, [2019-07-24T20:38:16.103593 #1] FATAL -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]     1: <!-- apple touchicons -->
[1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]     2: <%= tag("link", rel: "apple-touch-icon", href: asset_pack_path('media/images/apple-touch-icons/apple-touch-icon.png')) %>
[1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]     3: <%= tag("link", rel: "apple-touch-icon", sizes: "57x57", href:asset_pack_path('media/images/apple-touch-icons/apple-touch-icon-57x57.png')) %>
[1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]     4: <%= tag("link", rel: "apple-touch-icon", sizes: "72x72", href:asset_pack_path('media/images/apple-touch-icons/apple-touch-icon-72x72.png')) %>
[1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]     5: <%= tag("link", rel: "apple-touch-icon", sizes: "76x76", href:asset_pack_path('media/images/apple-touch-icons/apple-touch-icon-76x76.png')) %>
F, [2019-07-24T20:38:16.103638 #1] FATAL -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65]
F, [2019-07-24T20:38:16.103700 #1] FATAL -- : [1ab4480f-ae1b-4936-bf03-7f71cdbe1f65] app/views/shared/_apple_touch_icons.html.erb:2:in `_app_views_shared__apple_touch_icons_html_erb___2557525876939293284_47174108356260'
[1ab4480f-ae1b-4936-bf03-7f71cdbe1f65] app/views/layouts/application.html.erb:9:in `_app_views_layouts_application_html_erb___612063267231846677_47174108112820'
/app/log #

I've tried running /app/bin/update, but to no avail. Any help?

try to run

docker-compose exec backend ./bin/rake assets:precompile

and then restart

@vavgustov Thanks for the quick reply.

/app # ./bin/rake assets:precompile
yarn install v1.12.3
[1/4] Resolving packages...
success Already up-to-date.
Done in 1.01s.
/app #

Unfortunately that didn't help, and I did restart the full stack. Same error in web, and same messages in the log file. I've also tried manually running db:migrate, thinking that might be related but it also hasn't helped.

In a last ditch effort, I was able to get it working.

I shutdown the stack, tar'd up all 3 data dirs and emptied them out. Redeployed the stack, ran ./bin/setup as well as ./bin/rake assets:precompile, restarted the stack and validated it was working (without my data, of course).

Then I shut down the stack, emptied my db-data dir, copied over my data from db-data, and restarted the stack. Seems working so far!

ok great! I'll try to recheck this issue on next update

In a last ditch effort, I was able to get it working.

I shutdown the stack, tar'd up all 3 data dirs and emptied them out. Redeployed the stack, ran ./bin/setup as well as ./bin/rake assets:precompile, restarted the stack and validated it was working (without my data, of course).

Then I shut down the stack, emptied my db-data dir, copied over my data from db-data, and restarted the stack. Seems working so far!

Thanks a lot. I had the same issue, but I'm using an external database server, so I wasn't sure if that had something to do with it.
Thankfully, deleting the content of the backend _data folder solved the issue.

Cheers!

  • tschaerni