Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Переключить UI на news.radio-t.com #6

Closed
umputun opened this issue Nov 17, 2018 · 22 comments
Closed

Переключить UI на news.radio-t.com #6

umputun opened this issue Nov 17, 2018 · 22 comments
Assignees

Comments

@umputun
Copy link
Member

umputun commented Nov 17, 2018

Для этого нужен autobuild на dockerhub и поменать композ на мастере

@umputun umputun self-assigned this Nov 17, 2018
@umputun
Copy link
Member Author

umputun commented Nov 17, 2018

добавил https://hub.docker.com/r/umputun/rtnews-ui/ и поменял композе и это поломало все :(

Я не очень помнимаю, как оно теперь должно доставлять UI и зачем это вообще поменяли. Там зачем-то экспозится 9000 порт, это для чего? Если, как я и ожидаю, оно строит все в /app/public то для этого не было VOLUME (добавил)

cc @Reeywhaar @igoradamenko

@Reeywhaar
Copy link
Collaborator

9000 экспозится для дев сервера.
Я не знаю какой у тебя пайплайн, но я делаю make dockerBuild && make dockerBuildPublic, после чего в папке public все нужные файлы. Дальше дело за тобой, как-то доставить на сервер и прописать роут на rss, а fallback на index.html.
В docker-compose.yml директории уже сматчены.

@Reeywhaar
Copy link
Collaborator

Что-то такое надо добавить в твой основной пайплайн

FROM node:10-alpine AS rtnews_frontend
COPY ./ /app/
RUN \
	cd /app && \
	npm ci --loglevel error && \
	./node_modules/.bin/webpack --mode production

FROM %some-server-image%
COPY --from=rtnews_frontend /app/public %location%
...something

@umputun
Copy link
Member Author

umputun commented Nov 17, 2018

  • что такое " в папке public" ? это /app/public ?
  • "9000 экспозится для дев сервера." - Dockerfile oн для подашен, в нем никаких заготовок для dev быть не должно. Если надо 9000 экспозить то это должно быть сделано на уровен дев композа
  • построение контейнера очень странное, они зачем-то друг от друга делают FROM. Это убивает весь смысл multistage build

Что-то такое надо добавить в твой основной пайплайн

у меня нет никакого "основного пайплайн", ожидается что контейнер принесет (после запуска dockerfile) все в какой-то каталог. Он так делал в /var/webapp раньше

@Reeywhaar
Copy link
Collaborator

Да, это в /app/public.
Мы просто не обсуждали вообще вопрос билда, тут как-то резко все происходит.
То есть мне нужно сделать этот докер файл основным, убрать 9000, и класть билд в /var/webapp?
Серверу еще нужно сделать fallback на index.html

@umputun
Copy link
Member Author

umputun commented Nov 17, 2018

в /app/public пусто.

dk run -it --rm umputun/rtnews-ui
/app # ls
node_modules       package-lock.json  package.json       public
/app # ls public/
/app # exit

То есть мне нужно сделать этот докер файл основным, убрать 9000, и класть билд в /var/webapp?

да/ var/www/webapp, и VOLUME /var/www/webapp

Серверу еще нужно сделать fallback на index.html

на nginx news есть root /var/www/webapp;

@umputun
Copy link
Member Author

umputun commented Nov 17, 2018

прочие проблемы:

  • в контейнере ничего иного не надо, только public с файлами
  • в контейнере в виде CMD (или entry point) надо что-то типа вечного sleep. Запуск sh не будет работать
  • строить контейнер можно в 2 этапа - build и второй, который FROM alpine и копирует public

@umputun
Copy link
Member Author

umputun commented Nov 17, 2018

переключил обратно, на пред. версии. Мы пока явно не готовы

@umputun
Copy link
Member Author

umputun commented Nov 17, 2018

для понятности:

nginx контейнер делает вот это:

 volumes_from:
      - news-webapp:ro

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

#8 проблемы решило, задеплоил

@umputun umputun closed this as completed Nov 18, 2018
@Reeywhaar
Copy link
Collaborator

Количество комментариев фетчится с дискаса, это временно?

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

хмм, что-то я свое не смерджил. счас я его

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

починил, да

@Reeywhaar
Copy link
Collaborator

Reeywhaar commented Nov 18, 2018

https://news.radio-t.com/post/amazon-and-oracle-in-database-drama
Сейчас показывает 404, из-за того, что нету фоллбэка на index.html в nginx.

edit: хмм, фоллбэк есть, но видимо остался какой-то старый роут на /post/*

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

xмм, там было (и осталось) нечто и до этого:

  location /post {
        rewrite ^/post/(.*)$ /post/index.html?slug=$1 break;
    }

@Reeywhaar
Copy link
Collaborator

Это правило больше не нужно

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

удалил

@Reeywhaar
Copy link
Collaborator

Заметил, что в https://news.radio-t.com/archive/ количество комментариев тоже видимо с дискаса

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

это маловероятно. Кода для дискаса больше просто нет в том, что сейчас бежит

@Reeywhaar
Copy link
Collaborator

Возможно просто для архивных новостей не обновляется количество комментариев. Надо наверное убрать там ссылку. И наверное надо убрать сортировку "по дате новости". ?

@umputun
Copy link
Member Author

umputun commented Nov 18, 2018

Возможно просто для архивных новостей не обновляется количество комментариев. Надо наверное убрать там ссылку.

скорее всего так всегда и было, да просто убрать.

И наверное надо убрать сортировку "по дате новости". ?

ok

@Reeywhaar
Copy link
Collaborator

И еще заметил, что кешируется сам index.html: выглядит как будто что-то пошло не так и новости не загрузились. После cmd-R все проходит, но конфузит.

HTTP/1.1 304 Not Modified
Server: nginx
Date: Sun, 18 Nov 2018 04:10:04 GMT
Last-Modified: Sat, 17 Nov 2018 23:45:33 GMT
Connection: keep-alive
ETag: "5bf0a81d-92b"
Strict-Transport-Security: max-age=63072000; includeSubdomains; preload

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants