ClaperCo / Claper

The ultimate tool to interact with your audience
https://claper.co
GNU Affero General Public License v3.0
476 stars 55 forks source link

Unable to upload file #76

Closed godarayudhvir closed 7 months ago

godarayudhvir commented 1 year ago

Used the docker method, there aint much to do in that method for it to go wrong but after login when i upload and click create it does nothing.

Portainer logs mentioned below

01:38:57.361 [error] GenServer #PID<0.2427.0> terminating
** (File.Error) could not make directory (with -p) "/app/uploads/uploads/12451316": permission denied
    (elixir 1.13.2) lib/file.ex:316: File.mkdir_p!/1
    (claper 1.6.0) lib/claper_web/live/event_live/event_form_component.ex:117: anonymous fn/5 in ClaperWeb.EventLive.EventFormComponent.save_file/3
    (phoenix_live_view 0.18.18) lib/phoenix_live_view/upload_channel.ex:21: Phoenix.LiveView.UploadChannel.consume/3
    (elixir 1.13.2) lib/enum.ex:1593: Enum."-map/2-lists^map/1-0-"/2
    (claper 1.6.0) lib/claper_web/live/event_live/event_form_component.ex:107: ClaperWeb.EventLive.EventFormComponent.save_file/3
    (phoenix_live_view 0.18.18) lib/phoenix_live_view/channel.ex:630: anonymous fn/4 in Phoenix.LiveView.Channel.inner_component_handle_event/4
    (telemetry 1.2.1) /app/deps/telemetry/src/telemetry.erl:321: :telemetry.span/3
    (phoenix_live_view 0.18.18) lib/phoenix_live_view/diff.ex:207: Phoenix.LiveView.Diff.write_component/4
godarayudhvir commented 1 year ago

Added this in docker-compose and it worked user: 0:0 #uid and gid If this the wrong way to fix it please let me know else close this issue, am not well verse with linux yet so I would rather wait for confirmation thanks.

alxlion commented 1 year ago

Did you try to set full right on your uploads folder ?

godarayudhvir commented 1 year ago

Nope, before doing this change my docker-compose was exactly the one provided in this repository.

TiboLR34 commented 1 year ago

Hi I'm experiencing the same issue I'm running ubuntu LTS 22.04 on which I installed :

I first tried standard docker compose.yml under portainer : stack gets created successfully, I'm able to connnect to the website (ip:4000 then i moved to another port and https through apache2). I can create an account and login successfully If i drop an PPT/PPTX/PDF file nothing happens If I click on load, I get the selection box but nothing happens then I can change the event code & name but cannot change the accessibility "Create" button never ungrays. It seems the white progress bar on the top never gets to the end.

The only message the log keeps saying is (i moved token to a "X" and domain name to "Y" ) :

claper-app-1  | 00:08:04.840 [info] CONNECTED TO Phoenix.LiveView.Socket in 67µs
claper-app-1  |   Transport: :websocket
claper-app-1  |   Serializer: Phoenix.Socket.V2.JSONSerializer
claper-app-1  |   Parameters: %{"_csrf_token" => "X", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://Y/assets/app-941aca3045f13d66d3b1f5bb0e77d58a.css?vsn=d", "1" => "https://Y/assets/custom-fdb169e7774c2574f1f7cf930f39656d.css?vsn=d", "2" => "https://claper.tmurez.fr/assets/app-e2882b3da32934c1000e26bbc86447aa.js?vsn=d"}, "host" => "Y", "tz" => "Europe/Paris", "vsn" => "2.0.0"}

I tried to use successfully the claper.co interface so I don't think it comes from my firefox. I tried to use only docker postgres then compile and /.start.sh : same issue

Please help

alxlion commented 1 year ago

I added the user in docker compose thanks to @godarayudhvir . It works fine now (on the dev branch)

TiboLR34 commented 1 year ago

I tried the new docker-compose but it still cannot upload

TiboLR34 commented 1 year ago

As nothing happens when I click on add an animator or download or select availability time Would It be possible I miss some component ? I installed every "must have" on my ubuntu server lts 22.04 as said before I tried postgres 9 as latest.

please help

alxlion commented 12 months ago

Do you have any errors?

TiboLR34 commented 12 months ago

Hi

None from the web interface, nothing happens when I click on the file I want to upload, on the availability time or the add administrator button. My log is just above (tell me if you need another one) I got no error message from docker compose while pulling.

I tried once the manual installation and got a lot of dépréciation issues. Can I send you my command lines to view what I might have done wrong?

alxlion commented 12 months ago

Yes, show me your commands

TiboLR34 commented 12 months ago

Here is what I did... Please tell me where is my mistake ! I can run the website It takes my env as i see the 1GB limit ok but I cannot load anything 👍

`~$ elixir --version Erlang/OTP 26 [erts-14.1.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [jit:ns]

Elixir 1.15.7 (compiled with Erlang/OTP 26)

~$ npm --version 10.2.4

~$ nodejs --version v21.4.0

~$ gs --version 9.55.0

~$ libreoffice --version LibreOffice 7.3.7.2 30(Build:2)

~$ docker run -p 5432:5432 -e POSTGRES_PASSWORD=claper -e POSTGRES_USER=claper -e POSTGRES_DB=claper --name claper-db -d postgres:9 a370b2430c6226838dc8df021ab77ff0de941c0832eaa0b3d7c7e500fa693e12

/testclaper$ git clone https://github.com/ClaperCo/Claper.git Cloning into 'Claper'... remote: Enumerating objects: 4379, done. remote: Counting objects: 100% (816/816), done. remote: Compressing objects: 100% (309/309), done. remote: Total 4379 (delta 636), reused 590 (delta 487), pack-reused 3563 Receiving objects: 100% (4379/4379), 17.49 MiB | 2.51 MiB/s, done. Resolving deltas: 100% (3200/3200), done.

/testclaper/Claper$ cp .env.sample .env /testclaper/Claper$ sudo vim .env

**.ENV CONTENT PRESENTATION_STORAGE=local PRESENTATION_STORAGE_DIR=/home/claper/uploads MAX_FILE_SIZE_MB=1000

SMTP_RELAY=XXXXX SMTP_USERNAME=XXXXXX SMTP_PASSWORD=XXXXXX SMTP_PORT=465 SMTP_TLS=if_available

MAIL_TRANSPORT=smtp MAIL_FROM=noreply@claper.co MAIL_FROM_NAME=XXXXXX

DATABASE_URL=postgres://claper:claper@db:5432/claper SECRET_KEY_BASE=XXXXX

ENDPOINT_HOST=mydomain ENDPOINT_PORT=4000

ENABLE_ACCOUNT_CREATION=true ENABLE_MAILBOX_ROUTE=false

GS_JPG_RESOLUTION=1920x1080


/testclaper/Claper$ mix deps.get Resolving Hex dependencies... Resolution completed in 0.396s Unchanged: bcrypt_elixir 2.3.1 bunt 0.2.1 castore 1.0.4 certifi 2.12.0 comeonin 5.3.3 cowboy 2.10.0 cowboy_telemetry 0.4.0 cowlib 2.12.1 credo 1.7.0 csv 3.0.5 dart_sass 0.6.0 db_connection 2.5.0 decimal 2.1.1 earmark_parser 1.4.31 ecto 3.10.1 ecto_sql 3.10.1 elixir_make 0.7.6 esbuild 0.7.0 ex_aws 2.5.0 ex_aws_s3 2.4.0 ex_doc 0.29.4 expo 0.4.1 file_system 0.2.10 finch 0.16.0 floki 0.34.2 gen_smtp 1.2.0 gettext 0.22.3 hackney 1.20.1 hashids 2.1.0 hpax 0.1.2 idna 6.1.1 jason 1.4.1 libcluster 3.3.2 makeup 1.1.0 makeup_elixir 0.16.1 makeup_erlang 0.1.1 metrics 1.0.1 mime 2.0.5 mimerl 1.2.0 mint 1.5.1 mogrify 0.9.2 nimble_options 1.0.2 nimble_parsec 1.3.0 nimble_pool 1.0.0 parse_trans 3.4.1 phoenix 1.7.2 phoenix_ecto 4.4.0 phoenix_html 3.3.1 phoenix_live_dashboard 0.7.2 phoenix_live_reload 1.4.1 phoenix_live_view 0.18.18 phoenix_pubsub 2.1.1 phoenix_swoosh 1.2.0 phoenix_template 1.0.1 phoenix_view 2.0.2 plug 1.15.1 plug_cowboy 2.6.1 plug_crypto 1.2.5 porcelain 2.0.3 postgrex 0.17.1 ranch 1.8.0 ssl_verify_fun 1.1.7 sweet_xml 0.7.4 swoosh 1.12.0 telemetry 1.2.1 telemetry_metrics 0.6.1 telemetry_poller 1.0.0 unicode_util_compat 0.7.0 websock 0.5.0 websock_adapter 0.5.0

  • Getting ex_aws (Hex package)
  • Getting ex_aws_s3 (Hex package)
  • Getting ex_doc (Hex package)
  • Getting bcrypt_elixir (Hex package)
  • Getting phoenix (Hex package)
  • Getting phoenix_ecto (Hex package)
  • Getting ecto_sql (Hex package)
  • Getting postgrex (Hex package)
  • Getting phoenix_html (Hex package)
  • Getting phoenix_live_reload (Hex package)
  • Getting phoenix_live_view (Hex package)
  • Getting phoenix_swoosh (Hex package)
  • Getting phoenix_view (Hex package)
  • Getting floki (Hex package)
  • Getting phoenix_live_dashboard (Hex package)
  • Getting esbuild (Hex package)
  • Getting dart_sass (Hex package)
  • Getting swoosh (Hex package)
  • Getting finch (Hex package)
  • Getting telemetry_metrics (Hex package)
  • Getting telemetry_poller (Hex package)
  • Getting gettext (Hex package)
  • Getting jason (Hex package)
  • Getting sweet_xml (Hex package)
  • Getting plug_cowboy (Hex package)
  • Getting hashids (Hex package)
  • Getting mogrify (Hex package)
  • Getting libcluster (Hex package)
  • Getting porcelain (Hex package)
  • Getting hackney (Hex package)
  • Getting gen_smtp (Hex package)
  • Getting csv (Hex package)
  • Getting credo (Hex package)
  • Getting bunt (Hex package)
  • Getting file_system (Hex package)
  • Getting ranch (Hex package)
  • Getting certifi (Hex package)
  • Getting idna (Hex package)
  • Getting metrics (Hex package)
  • Getting mimerl (Hex package)
  • Getting parse_trans (Hex package)
  • Getting ssl_verify_fun (Hex package)
  • Getting unicode_util_compat (Hex package)
  • Getting cowboy (Hex package)
  • Getting cowboy_telemetry (Hex package)
  • Getting plug (Hex package)
  • Getting mime (Hex package)
  • Getting plug_crypto (Hex package)
  • Getting telemetry (Hex package)
  • Getting cowlib (Hex package)
  • Getting expo (Hex package)
  • Getting castore (Hex package)
  • Getting mint (Hex package)
  • Getting nimble_options (Hex package)
  • Getting nimble_pool (Hex package)
  • Getting hpax (Hex package)
  • Getting phoenix_template (Hex package)
  • Getting db_connection (Hex package)
  • Getting decimal (Hex package)
  • Getting ecto (Hex package)
  • Getting phoenix_pubsub (Hex package)
  • Getting websock_adapter (Hex package)
  • Getting websock (Hex package)
  • Getting comeonin (Hex package)
  • Getting elixir_make (Hex package)
  • Getting earmark_parser (Hex package)
  • Getting makeup_elixir (Hex package)
  • Getting makeup_erlang (Hex package)
  • Getting makeup (Hex package)
  • Getting nimble_parsec (Hex package) You have added/upgraded packages you could sponsor, run mix hex.sponsor to learn more

/testclaper/Claper$ mix ecto.migrate

==> earmark_parser Compiling 1 file (.yrl) Compiling 2 files (.xrl) Compiling 3 files (.erl) Compiling 46 files (.ex) Generated earmark_parser app ==> file_system Compiling 7 files (.ex) Generated file_system app ==> decimal Compiling 4 files (.ex) Generated decimal app ==> mime Compiling 1 file (.ex) Generated mime app ==> nimble_options Compiling 3 files (.ex) Generated nimble_options app ==> nimble_parsec Compiling 4 files (.ex) Generated nimble_parsec app ==> bunt Compiling 2 files (.ex) Generated bunt app ===> Analyzing applications... ===> Compiling unicode_util_compat ===> Analyzing applications... ===> Compiling idna ===> Analyzing applications... ===> Compiling telemetry ==> telemetry_metrics Compiling 7 files (.ex) Generated telemetry_metrics app ===> Analyzing applications... ===> Compiling telemetry_poller ==> jason Compiling 10 files (.ex) Generated jason app ==> libcluster Compiling 13 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/logger.ex:16: Cluster.Logger.warn/2

Generated libcluster app ==> comeonin Compiling 4 files (.ex) Generated comeonin app ==> db_connection Compiling 15 files (.ex) Generated db_connection app ==> expo Compiling 2 files (.erl) Compiling 21 files (.ex) Generated expo app ==> phoenix_pubsub Compiling 11 files (.ex) Generated phoenix_pubsub app ==> plug_crypto Compiling 5 files (.ex) Generated plug_crypto app ==> hpax Compiling 4 files (.ex) Generated hpax app ===> Analyzing applications... ===> Compiling mimerl ==> gettext Compiling 17 files (.ex) Generated gettext app ===> Analyzing applications... ===> Compiling ranch ===> Analyzing applications... ===> Compiling gen_smtp src/smtp_server_example.erl:296:10: Warning: type variable 'State' is only used once (is unbound)

==> porcelain Compiling 9 files (.ex) warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:6: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:7: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:8: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:9: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:11: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:12: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:13: Porcelain.Driver.Common (module)

warning: Behaviour.defcallback/1 is deprecated. Use the @callback module attribute instead lib/porcelain/drivers/driver_common.ex:14: Porcelain.Driver.Common (module)

warning: the Behaviour module is deprecated. Instead of using this module, use the @callback and @macrocallback module attributes. See the documentation for Module for more information on these attributes lib/porcelain/drivers/driver_common.ex:4: (module) (elixir 1.15.7) src/elixir_compiler.erl:67: :elixir_compiler.dispatch/4 (elixir 1.15.7) src/elixir_compiler.erl:52: :elixir_compiler.compile/3 (elixir 1.15.7) src/elixir_module.erl:408: :elixir_module.eval_form/7 (elixir 1.15.7) src/elixir_module.erl:128: :elixir_module.compile/7 (elixir 1.15.7) src/elixir_compiler.erl:38: :elixir_compiler.maybe_fast_compile/3

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/porcelain/init.ex:37: Porcelain.Init.init/1

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/porcelain/init.ex:38: Porcelain.Init.init/1

warning: function init/1 required by behaviour GenServer is not implemented (in module Porcelain.Driver.Common.StreamServer).

We will inject a default implementation for now:

def init(init_arg) do
  {:ok, init_arg}
end

You can copy the implementation above or define your own that converts the arguments given to GenServer.start_link/3 to the server state.

lib/porcelain/drivers/stream_server.ex:1: Porcelain.Driver.Common.StreamServer (module)

warning: variable "result" is unused (there is a variable with the same name in the context, use the pin operator (^) to match on it or prefix this variable with underscore if it is not meant to be used) lib/porcelain/drivers/driver_common.ex:165: Porcelain.Driver.Common.send_result/4

warning: String.to_char_list/1 is deprecated. Use String.to_charlist/1 instead lib/porcelain/init.ex:78: Porcelain.Init.init_shell/0

warning: Atom.to_char_list/1 is deprecated. Use Atom.to_charlist/1 instead lib/porcelain.ex:408: Porcelain.convert_env_name/1

warning: String.to_char_list/1 is deprecated. Use String.to_charlist/1 instead Invalid call found at 2 locations: lib/porcelain.ex:405: Porcelain.convert_env_name/1 lib/porcelain.ex:412: Porcelain.convert_env_val/1

Generated porcelain app ==> ssl_verify_fun Compiling 7 files (.erl) Generated ssl_verify_fun app ==> csv Compiling 7 files (.ex) Generated csv app ==> mogrify Compiling 9 files (.ex) Generated mogrify app ===> Analyzing applications... ===> Compiling certifi ==> credo Compiling 251 files (.ex) warning: Regex.regex?/1 is deprecated. Use Kernel.is_struct(term, Regex) or pattern match on %Regex{} instead lib/credo/check/config_comment.ex:124: Credo.Check.ConfigComment.check_tuple_ignores_issue?/2

Generated credo app ==> ecto Compiling 56 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/ecto/changeset/relation.ex:457: Ecto.Changeset.Relation.process_current/3

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/ecto/repo/preloader.ex:208: Ecto.Repo.Preloader.fetch_ids/4

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/ecto/changeset.ex:3095: Ecto.Changeset.optimistic_lock/3

Generated ecto app ==> plug Compiling 1 file (.erl) Compiling 40 files (.ex) Generated plug app ==> phoenix_html Compiling 9 files (.ex) Generated phoenix_html app ==> phoenix_template Compiling 4 files (.ex) Generated phoenix_template app ==> phoenix_view Compiling 1 file (.ex) Generated phoenix_view app ==> postgrex Compiling 68 files (.ex) Generated postgrex app ==> makeup Compiling 44 files (.ex) Generated makeup app ==> makeup_elixir Compiling 6 files (.ex) Generated makeup_elixir app ==> makeup_erlang Compiling 3 files (.ex) warning: Application.get_env/3 is discouraged in the module body, use Application.compile_env/3 instead lib/makeup/lexers/erlang_lexer.ex:250: Makeup.Lexers.ErlangLexer (module)

Generated makeup_erlang app ==> ex_doc Compiling 25 files (.ex) Generated ex_doc app ===> Analyzing applications... ===> Compiling parse_trans ==> ecto_sql Compiling 25 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/ecto/migrator.ex:271: Ecto.Migrator.up/4

Generated ecto_sql app ==> nimble_pool Compiling 2 files (.ex) Generated nimble_pool app ==> hashids Compiling 4 files (.ex) Generated hashids app ===> Analyzing applications... ===> Compiling metrics ===> Analyzing applications... ===> Compiling hackney ==> castore Compiling 1 file (.ex) Generated castore app ==> esbuild Compiling 3 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/esbuild.ex:69: Esbuild.start/2

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/esbuild.ex:83: Esbuild.start/2

Generated esbuild app ==> dart_sass Compiling 3 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/dart_sass.ex:61: DartSass.start/2

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/dart_sass.ex:75: DartSass.start/2

Generated dart_sass app ==> mint Compiling 1 file (.erl) Compiling 19 files (.ex) Generated mint app ==> finch Compiling 13 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/finch/http2/pool.ex:362: Finch.HTTP2.Pool.connected/3

warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/finch/http2/pool.ex:460: Finch.HTTP2.Pool.connected_read_only/3

Generated finch app ==> elixir_make Compiling 6 files (.ex) Generated elixir_make app ==> bcrypt_elixir mkdir -p /home/thibserv/.docker/testclaper/Claper/_build/dev/lib/bcrypt_elixir/priv cc -g -O3 -Wall -Wno-format-truncation -I"/usr/lib/erlang/erts-14.1.1/include" -Ic_src -fPIC -shared c_src/bcrypt_nif.c c_src/blowfish.c -o /home/thibserv/.docker/testclaper/Claper/_build/dev/lib/bcrypt_elixir/priv/bcrypt_nif.so Compiling 3 files (.ex) warning: use Bitwise is deprecated. import Bitwise instead lib/bcrypt/base.ex:6: Bcrypt.Base (module)

Generated bcrypt_elixir app ==> websock Compiling 1 file (.ex) Generated websock app ==> sweet_xml Compiling 2 files (.ex) Generated sweet_xml app ==> ex_aws Compiling 27 files (.ex) Generated ex_aws app ==> ex_aws_s3 Compiling 7 files (.ex) Generated ex_aws_s3 app ===> Analyzing applications... ===> Compiling cowlib ===> Analyzing applications... ===> Compiling cowboy ===> Analyzing applications... ===> Compiling cowboy_telemetry ==> plug_cowboy Compiling 5 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/plug/cowboy.ex:352: Plug.Cowboy.to_args/5

Generated plug_cowboy app ==> swoosh Compiling 45 files (.ex) Generated swoosh app ==> websock_adapter Compiling 2 files (.ex) Generated websock_adapter app ==> phoenix Compiling 71 files (.ex) Generated phoenix app ==> phoenix_live_reload Compiling 4 files (.ex) warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead lib/phoenix_live_reload/application.ex:32: Phoenix.LiveReloader.Application.start_link/0

Generated phoenix_live_reload app ==> phoenix_live_view Compiling 35 files (.ex) warning: Plug.Conn.Query.decode_pair/2 is deprecated. Use decode_init/0, decode_each/2, and decode_done/2 instead Invalid call found at 5 locations: lib/phoenix_live_view/test/client_proxy.ex:1128: Phoenix.LiveViewTest.ClientProxy.form_defaults/3 lib/phoenix_live_view/test/client_proxy.ex:1133: Phoenix.LiveViewTest.ClientProxy.form_defaults/3 lib/phoenix_live_view/test/client_proxy.ex:1137: Phoenix.LiveViewTest.ClientProxy.form_defaults/3 lib/phoenix_live_view/test/client_proxy.ex:1147: Phoenix.LiveViewTest.ClientProxy.form_defaults/3 lib/phoenix_live_view/test/client_proxy.ex:1156: Phoenix.LiveViewTest.ClientProxy.form_defaults/3

Generated phoenix_live_view app ==> phoenix_live_dashboard Compiling 40 files (.ex) Generated phoenix_live_dashboard app ==> phoenix_swoosh Compiling 1 file (.ex) Generated phoenix_swoosh app ==> phoenix_ecto Compiling 7 files (.ex) Generated phoenix_ecto app ==> claper Compiling 93 files (.ex) Generated claper app ** (RuntimeError) SECRET_KEY_BASE configuration option is required. See https://docs.claper.co/configuration.html#production-docker /home/thibserv/.docker/testclaper/Claper/config/runtime.exs:35: (file) (stdlib 5.1.1) erl_eval.erl:750: :erl_eval.do_apply/7 (stdlib 5.1.1) erl_eval.erl:136: :erl_eval.exprs/6 (elixir 1.15.7) lib/code.ex:543: Code.validated_eval_string/3 (elixir 1.15.7) lib/config.ex:290: Config.eval!/3

/testclaper/Claper$ cd assets && npm i npm WARN old lockfile npm WARN old lockfile The package-lock.json file was created with an old version of npm, npm WARN old lockfile so supplemental metadata must be fetched from the registry. npm WARN old lockfile npm WARN old lockfile This is a one-time fix-up, please be patient... npm WARN old lockfile

added 111 packages, and audited 115 packages in 7s

20 packages are looking for funding run npm fund for details

found 0 vulnerabilities npm notice npm notice New patch version of npm available! 10.2.4 -> 10.2.5 npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.2.5 npm notice Run npm install -g npm@10.2.5 to update! npm notice

/testclaper/Claper/assets$ sudo npm install -g npm@10.2.5

removed 1 package, and changed 32 packages in 2s

28 packages are looking for funding run npm fund for details

/testclaper/Claper/assets$ cd .. /testclaper/Claper$ sudo chmod +x ./start.sh

/testclaper/Claper$ sudo vim -f docker-compose-dev.yml


version: "3.0" services: db: image: postgres:9 ports:

  • 5432:5432 volumes:
  • /home/claper/db:/var/lib/postgresql/data environment: POSTGRES_PASSWORD: claper POSTGRES_USER: claper POSTGRES_DB: claper healthcheck: test: ["CMD-SHELL", "pg_isready -U claper"] interval: 5s timeout: 5s retries: 10 app: build: . user: 0:0 ports:
  • 11005:4000 volumes:
  • /home/claper/uploads:/app/uploads:rw environment: DATABASE_URL: postgres://claper:claper@db:5432/claper SECRET_KEY_BASE: MAIL_TRANSPORT: smtp MAIL_FROM: Claper MAIL_FROM_NAME: noreply@claper.co SMTP_RELAY: smtp..com SMTP_USERNAME: SMTP_PASSWORD: *** SMTP_PORT: 465 ENDPOINT_HOST: mydomain ENDPOINT_PORT: 4000 PRESENTATION_STORAGE: local MAX_FILE_SIZE_MB: 1000 ENABLE_ACCOUNT_CREATION: true GS_JPG_RESOLUTION: 1920x1080 depends_on: db: condition: service_healthy volumes: postgres-data: uplods:

/testclaper/Claper$ docker compose -f docker-compose-dev.yml up [+] Running 1/0 ✔ Container claper-db-1 Created 0.0s Attaching to claper-app-1, claper-db-1 claper-db-1 | The files belonging to this database system will be owned by user "postgres". claper-db-1 | This user must also own the server process. claper-db-1 | claper-db-1 | The database cluster will be initialized with locale "en_US.utf8". claper-db-1 | The default database encoding has accordingly been set to "UTF8". claper-db-1 | The default text search configuration will be set to "english". claper-db-1 | claper-db-1 | Data page checksums are disabled. claper-db-1 | claper-db-1 | fixing permissions on existing directory /var/lib/postgresql/data ... ok claper-db-1 | creating subdirectories ... ok claper-db-1 | selecting default max_connections ... 100 claper-db-1 | selecting default shared_buffers ... 128MB claper-db-1 | selecting default timezone ... Etc/UTC claper-db-1 | selecting dynamic shared memory implementation ... posix claper-db-1 | creating configuration files ... ok claper-db-1 | running bootstrap script ... ok claper-db-1 | performing post-bootstrap initialization ... ok claper-db-1 | claper-db-1 | WARNING: enabling "trust" authentication for local connections claper-db-1 | You can change this by editing pg_hba.conf or using the option -A, or claper-db-1 | --auth-local and --auth-host, the next time you run initdb. claper-db-1 | syncing data to disk ... ok claper-db-1 | claper-db-1 | Success. You can now start the database server using: claper-db-1 | claper-db-1 | pg_ctl -D /var/lib/postgresql/data -l logfile start claper-db-1 | claper-db-1 | waiting for server to start....LOG: database system was shut down at 2023-12-10 00:08:29 UTC claper-db-1 | LOG: MultiXact member wraparound protections are now enabled claper-db-1 | LOG: autovacuum launcher started claper-db-1 | LOG: database system is ready to accept connections claper-db-1 | done claper-db-1 | server started claper-db-1 | CREATE DATABASE claper-db-1 | claper-db-1 | claper-db-1 | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/* claper-db-1 | claper-db-1 | LOG: received fast shutdown request claper-db-1 | LOG: aborting any active transactions claper-db-1 | waiting for server to shut down....LOG: autovacuum launcher shutting down claper-db-1 | LOG: shutting down claper-db-1 | LOG: database system is shut down claper-db-1 | done claper-db-1 | server stopped claper-db-1 | claper-db-1 | PostgreSQL init process complete; ready for start up. claper-db-1 | claper-db-1 | LOG: database system was shut down at 2023-12-10 00:08:30 UTC claper-db-1 | LOG: MultiXact member wraparound protections are now enabled claper-db-1 | LOG: autovacuum launcher started claper-db-1 | LOG: database system is ready to accept connections claper-app-1 | 00:08:35.052 [info] == Running 20211007130631 Claper.Repo.Migrations.CreateUsersAuthTables.change/0 forward claper-app-1 | 00:08:35.056 [info] execute "CREATE EXTENSION IF NOT EXISTS citext" claper-app-1 | 00:08:35.066 [info] execute "CREATE EXTENSION IF NOT EXISTS pgcrypto" claper-app-1 | 00:08:35.070 [info] create table users claper-app-1 | 00:08:35.077 [info] create index users_email_index claper-app-1 | 00:08:35.079 [info] create index users_uuid_index claper-app-1 | 00:08:35.082 [info] create table users_tokens claper-app-1 | 00:08:35.089 [info] create index users_tokens_user_id_index claper-app-1 | 00:08:35.092 [info] create index users_tokens_uuid_index claper-app-1 | 00:08:35.095 [info] create index users_tokens_context_token_index claper-app-1 | 00:08:35.103 [info] == Migrated 20211007130631 in 0.0s claper-app-1 | 00:08:35.138 [info] == Running 20211007145520 Claper.Repo.Migrations.CreateEvents.change/0 forward claper-app-1 | 00:08:35.139 [info] create table events claper-app-1 | 00:08:35.144 [info] create index events_id_index claper-app-1 | 00:08:35.146 [info] create index events_uuid_index claper-app-1 | 00:08:35.149 [info] create index events_user_id_index claper-app-1 | 00:08:35.151 [info] == Migrated 20211007145520 in 0.0s claper-app-1 | 00:08:35.154 [info] == Running 20211007152922 Claper.Repo.Migrations.CreatePosts.change/0 forward claper-app-1 | 00:08:35.155 [info] create table posts claper-app-1 | 00:08:35.162 [info] create index posts_uuid_index claper-app-1 | 00:08:35.164 [info] create index posts_id_index claper-app-1 | 00:08:35.167 [info] create index posts_attendee_identifier_index claper-app-1 | 00:08:35.169 [info] create index posts_user_id_index claper-app-1 | 00:08:35.172 [info] == Migrated 20211007152922 in 0.0s claper-app-1 | 00:08:35.176 [info] == Running 20220111171051 Claper.Repo.Migrations.CreateReactions.change/0 forward claper-app-1 | 00:08:35.177 [info] create table reactions claper-app-1 | 00:08:35.184 [info] create index reactions_icon_post_id_user_id_index claper-app-1 | 00:08:35.187 [info] create index reactions_icon_post_id_attendee_identifier_index claper-app-1 | 00:08:35.190 [info] == Migrated 20220111171051 in 0.0s claper-app-1 | 00:08:35.194 [info] == Running 20220226210445 Claper.Repo.Migrations.CreatePresentationFiles.change/0 forward claper-app-1 | 00:08:35.194 [info] create table presentation_files claper-app-1 | 00:08:35.201 [info] create index presentation_files_hash_index claper-app-1 | 00:08:35.204 [info] == Migrated 20220226210445 in 0.0s claper-app-1 | 00:08:35.208 [info] == Running 20220305222231 Claper.Repo.Migrations.CreatePolls.change/0 forward claper-app-1 | 00:08:35.208 [info] create table polls claper-app-1 | 00:08:35.213 [info] == Migrated 20220305222231 in 0.0s claper-app-1 | 00:08:35.217 [info] == Running 20220305223506 Claper.Repo.Migrations.CreatePollOpts.change/0 forward claper-app-1 | 00:08:35.218 [info] create table poll_opts claper-app-1 | 00:08:35.223 [info] == Migrated 20220305223506 in 0.0s claper-app-1 | 00:08:35.226 [info] == Running 20220314171347 Claper.Repo.Migrations.CreateActivityLeaders.change/0 forward claper-app-1 | 00:08:35.227 [info] create table activity_leaders claper-app-1 | 00:08:35.231 [info] create index activity_leaders_event_id_email_index claper-app-1 | 00:08:35.234 [info] == Migrated 20220314171347 in 0.0s claper-app-1 | 00:08:35.238 [info] == Running 20220409094249 Claper.Repo.Migrations.CreatePresentationStates.change/0 forward claper-app-1 | 00:08:35.238 [info] create table presentation_states claper-app-1 | 00:08:35.245 [info] == Migrated 20220409094249 in 0.0s claper-app-1 | 00:08:35.249 [info] == Running 20220418194055 Claper.Repo.Migrations.CreatePollVotes.change/0 forward claper-app-1 | 00:08:35.250 [info] create table poll_votes claper-app-1 | 00:08:35.256 [info] create index poll_votes_poll_id_user_id_index claper-app-1 | 00:08:35.259 [info] create index poll_votes_poll_id_attendee_identifier_index claper-app-1 | 00:08:35.261 [info] == Migrated 20220418194055 in 0.0s claper-app-1 | 00:08:35.265 [info] == Running 20220419141142 Claper.Repo.Migrations.CreateStats.change/0 forward claper-app-1 | 00:08:35.266 [info] create table stats claper-app-1 | 00:08:35.271 [info] == Migrated 20220419141142 in 0.0s claper-app-1 | 00:08:35.275 [info] == Running 20220420124141 Claper.Repo.Migrations.PresentationFilesAddAudiencePeakColumn.change/0 forward claper-app-1 | 00:08:35.275 [info] alter table events claper-app-1 | 00:08:35.287 [info] == Migrated 20220420124141 in 0.0s claper-app-1 | 00:08:35.292 [info] == Running 20220822205711 Claper.Repo.Migrations.AddHashedPasswordToUsers.change/0 forward claper-app-1 | 00:08:35.292 [info] alter table users claper-app-1 | 00:08:35.293 [info] == Migrated 20220822205711 in 0.0s claper-app-1 | 00:08:35.296 [info] == Running 20230218180723 Claper.Repo.Migrations.CreateForms.change/0 forward claper-app-1 | 00:08:35.297 [info] create table forms claper-app-1 | 00:08:35.303 [info] == Migrated 20230218180723 in 0.0s claper-app-1 | 00:08:35.307 [info] == Running 20230218181013 Claper.Repo.Migrations.CreateFormSubmits.change/0 forward claper-app-1 | 00:08:35.308 [info] create table form_submits claper-app-1 | 00:08:35.315 [info] create index form_submits_form_id_user_id_index claper-app-1 | 00:08:35.318 [info] create index form_submits_form_id_attendee_identifier_index claper-app-1 | 00:08:35.321 [info] == Migrated 20230218181013 in 0.0s claper-app-1 | 00:08:35.325 [info] == Running 20230419205637 Claper.Repo.Migrations.AddMultipleFromPolls.change/0 forward claper-app-1 | 00:08:35.325 [info] alter table polls claper-app-1 | 00:08:35.331 [info] drop index poll_votes_poll_id_user_id_index cascade claper-app-1 | 00:08:35.332 [info] drop index poll_votes_poll_id_attendee_identifier_index cascade claper-app-1 | 00:08:35.332 [info] == Migrated 20230419205637 in 0.0s claper-app-1 | 00:08:35.337 [info] == Running 20230421093834 Claper.Repo.Migrations.AddChatEnabledToPresentationStates.change/0 forward claper-app-1 | 00:08:35.337 [info] alter table presentation_states claper-app-1 | 00:08:35.344 [info] == Migrated 20230421093834 in 0.0s claper-app-1 | 00:08:35.349 [info] == Running 20230809172244 Claper.Repo.Migrations.AddAnonymousChatEnabledToPresentationStates.change/0 forward claper-app-1 | 00:08:35.349 [info] alter table presentation_states claper-app-1 | 00:08:35.356 [info] == Migrated 20230809172244 in 0.0s claper-app-1 | 00:08:35.360 [info] == Running 20231020175202 Claper.Repo.Migrations.AddPinnedToPostsAndPresentationStates.change/0 forward claper-app-1 | 00:08:35.361 [info] alter table presentation_states claper-app-1 | 00:08:35.367 [info] alter table posts claper-app-1 | 00:08:35.379 [info] == Migrated 20231020175202 in 0.0s claper-app-1 | 00:08:35.384 [info] == Running 20231028144823 Claper.Repo.Migrations.CreateEmbeds.change/0 forward claper-app-1 | 00:08:35.384 [info] create table embeds claper-app-1 | 00:08:35.391 [info] == Migrated 20231028144823 in 0.0s claper-app-1 | 00:08:36.516 [info] Running ClaperWeb.Endpoint with cowboy 2.10.0 at 0.0.0.0:4000 (http) claper-app-1 | 00:08:36.523 [info] Access ClaperWeb.Endpoint at http://mydomain:4000 claper-app-1 | 00:09:04.765 request_id=F59P0VssKXGjHBcAAAHE [info] GET / claper-app-1 | 00:09:04.780 request_id=F59P0VssKXGjHBcAAAHE [info] Sent 200 in 14ms claper-app-1 | 00:09:04.914 [info] CONNECTED TO Phoenix.LiveView.Socket in 59µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "JUUsLyAXBBobHQgGGzEICDZ_CXdFLTccg6ONRvEnshpT_EAObMO--BAF", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:05.265 [info] CONNECTED TO Phoenix.LiveView.Socket in 61µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "JUUsLyAXBBobHQgGGzEICDZ_CXdFLTccg6ONRvEnshpT_EAObMO--BAF", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:05.794 [info] CONNECTED TO Phoenix.LiveView.Socket in 64µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "JUUsLyAXBBobHQgGGzEICDZ_CXdFLTccg6ONRvEnshpT_EAObMO--BAF", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:06.554 [info] CONNECTED TO Phoenix.LiveView.Socket in 35µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "JUUsLyAXBBobHQgGGzEICDZ_CXdFLTccg6ONRvEnshpT_EAObMO--BAF", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:07.099 request_id=F59P0eZElnDq1GwAAAAD [info] GET /users/log_in claper-app-1 | 00:09:07.103 request_id=F59P0eZElnDq1GwAAAAD [info] Sent 200 in 3ms claper-app-1 | 00:09:09.890 request_id=F59P0oyd9lZ6K9UAAAAj [info] GET /users/register claper-app-1 | 00:09:09.897 request_id=F59P0oyd9lZ6K9UAAAAj [info] Sent 200 in 6ms claper-app-1 | 00:09:31.618 request_id=F59P15u37pKquNYAAABD [info] POST /users/register claper-app-1 | 00:09:31.892 request_id=F59P15u37pKquNYAAABD [info] Sent 302 in 274ms claper-app-1 | 00:09:31.899 request_id=F59P16xylYMOcncAAABj [info] GET /events claper-app-1 | 00:09:31.906 request_id=F59P16xylYMOcncAAABj [info] Sent 200 in 7ms claper-app-1 | 00:09:32.080 [info] CONNECTED TO Phoenix.LiveView.Socket in 87µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "Mj0oN2AvDgUTFSsCODYyMANbMGBqF0hjBbgPQZ9PkqfkwdHSovaVSGx5", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:33.921 [info] CONNECTED TO Phoenix.LiveView.Socket in 81µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "Mj0oN2AvDgUTFSsCODYyMANbMGBqF0hjBbgPQZ9PkqfkwdHSovaVSGx5", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:36.514 [info] CONNECTED TO Phoenix.LiveView.Socket in 103µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "Mj0oN2AvDgUTFSsCODYyMANbMGBqF0hjBbgPQZ9PkqfkwdHSovaVSGx5", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:40.337 [info] CONNECTED TO Phoenix.LiveView.Socket in 101µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "Mj0oN2AvDgUTFSsCODYyMANbMGBqF0hjBbgPQZ9PkqfkwdHSovaVSGx5", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:41.368 request_id=F59P2eDkjlBNqh0AAACD [info] GET /events/new claper-app-1 | 00:09:41.379 request_id=F59P2eDkjlBNqh0AAACD [info] Sent 200 in 10ms claper-app-1 | 00:09:46.411 [info] CONNECTED TO Phoenix.LiveView.Socket in 87µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "BR58JFYWUiIsFBgkNx8SNBV3HABzKgAEuA3CgcewTpUMxMhWyZM6Jz0R", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:09:55.009 [info] CONNECTED TO Phoenix.LiveView.Socket in 89µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "BR58JFYWUiIsFBgkNx8SNBV3HABzKgAEuA3CgcewTpUMxMhWyZM6Jz0R", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"} claper-app-1 | 00:10:07.986 [info] CONNECTED TO Phoenix.LiveView.Socket in 101µs claper-app-1 | Transport: :websocket claper-app-1 | Serializer: Phoenix.Socket.V2.JSONSerializer claper-app-1 | Parameters: %{"_csrf_token" => "BR58JFYWUiIsFBgkNx8SNBV3HABzKgAEuA3CgcewTpUMxMhWyZM6Jz0R", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "https://claper.mydomain.cc/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "https://claper.mydomain.cc/assets/custom-77a17631bd4618ba15f4a5c8a1205de0.css?vsn=d", "2" => "https://claper.mydomain.cc/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "claper.mydomain.cc", "tz" => "Europe/Paris", "vsn" => "2.0.0"}

`

alxlion commented 11 months ago

If you use Docker you don't need to install Elixir and all dependencies on your system. Do you want to run it with or without Docker ?

Did you try with the docker-compose.yml instead of docker-compose-dev.yml ?

TiboLR34 commented 11 months ago

Indeed I don't need those dependecies on my system.

I started linux a few month ago as I wanted my nextcloud to get out of my NAS. I had difficulties to solve issues between dependencies and turned to Docker with nextcloud-AIO package through apache 2. It worked perfectly as Wallabag, portainer and wordpress since installed.

Claper is great and I wanted to install it. I started with pasting the docker-compose file directly in Portainer without any change : didn't work (I mean same issue, I get to the website but my picked ppt file or PDF file never loads). Then I tried the docker compose file manually in the terminal : same issue Then I tried the manual install and added all the dependencies following the installation guide. No trouble installing dependencies. .env file created with my wanted parameters (port changed, gmail set up, upload max to 1Gb. Impossible to compile and load : lot of "deprecation warnings". After trying to improve dependendices parameters and writing the line commands given with the error messages, i had the web site loaded but still the same issue. Then I tried the manual git clone & docker compose with -dev file : same issue ! User 0:0 didn't change anything.

I agree the best would be to paste the dev file in portainer (which seems to me the standard file + some personnalized parameters). What log file can I give you to identify why the file doesn't load? I tried through Claper website and It works so I don't think it comes from my browser/windows pc.

Thanks in advance

alban-fairy commented 11 months ago

Hi, i'm having the same problem.

I'm using docker-compose on a RHEL 8 Server.

Same probleme using docker-compose.yml and docker-compose-dev.yml

I found this error in the console :

WebSocket connection to 'ws://vm-cron/live/websocket?_csrf_token=Mw9BKjQ8HgRGXX0PBRIBfmt2QAoqHxQhWn5xXOUWve-PbkFKZ0mnOjvP&tz=Europe%2FParis&host=vm-cron&_track_static%5B0%5D=http%3A%2F%2Fvm-cron%2Fassets%2Fapp-8290155a9ccb3dc0775d79309bf4cccc.css%3Fvsn%3Dd&_track_static%5B1%5D=http%3A%2F%2Fvm-cron%2Fassets%2Fcustom-9b3c6f17f022459b1599c4bb27d0e095.css%3Fvsn%3Dd&_track_static%5B2%5D=http%3A%2F%2Fvm-cron%2Fassets%2Fapp-551c9262908d2ae412d31e1001b45aab.js%3Fvsn%3Dd&_mounts=0&_live_referer=undefined&vsn=2.0.0' failed: 

I have the same log using apache or nginx to redirect request to docker container.

the container logs seems to receive the request : 
13:06:28.704 [info] CONNECTED TO Phoenix.LiveView.Socket in 29µs
  Transport: :websocket
  Serializer: Phoenix.Socket.V2.JSONSerializer
  Parameters: %{"_csrf_token" => "MEMWNzY_XFgRF18lDFNmBmkgKwA1AD4hFqGQtM70DmkuB72MXHYDyDId", "_live_referer" => "undefined", "_mounts" => "0", "_track_static" => %{"0" => "http://cron.ifce.lan/assets/app-8290155a9ccb3dc0775d79309bf4cccc.css?vsn=d", "1" => "http://cron.ifce.lan/assets/custom-ac42442f920f1af70900cab905994054.css?vsn=d", "2" => "http://cron.ifce.lan/assets/app-551c9262908d2ae412d31e1001b45aab.js?vsn=d"}, "host" => "cron.ifce.lan", "tz" => "Europe/Paris", "vsn" => "2.0.0"}

I also try the same docker-compose on my computer and it works with http://localhost:4000 url

I think it's a problem on WebSocket callback but I don't find a solution yet.

Thanks

alxlion commented 11 months ago

Thanks for your report, both of you, I'll try to reproduce the problem on my side. I'll come back to you when I found a solution.

TiboLR34 commented 11 months ago

Thanks a lot, if that helps, I'm running ubuntu server LTS 22.04.3 I checked ws_tunnel is running on apache2. When I run docker compose as published on github and run the website without apache2 (ip:4000) it doesn't work either. I also tried to disable ufw : same issue

Let me know if my log files can help, I'm available to test if you want,

sincerely

alxlion commented 10 months ago

I made a short video on a fresh Ubuntu to test, as you can see all is working otb. Did you try with localhost or the issue is when you access Claper through a tunnel or front service like apache?

https://github.com/ClaperCo/Claper/assets/1835726/fef6193c-ec2b-4440-9918-23c003f5681a

dmb4ur commented 10 months ago

I'm also having problems uploading a presentation, after spinning up the docker container and logging into the web interface. I get the following error

app-1  | 09:47:09.009 [info] Migrations already up
app-1  | 09:47:09.594 [info] Running ClaperWeb.Endpoint with cowboy 2.10.0 at 0.0.0.0:4000 (http)
app-1  | 09:47:09.595 [info] Access ClaperWeb.Endpoint at http://localhost:4000
app-1  | 09:47:16.805 [error] Could not check origin for Phoenix.Socket transport.
app-1  | 
app-1  | Origin of the request: http://192.168.1.71:4000
app-1  | 
app-1  | This happens when you are attempting a socket connection to
app-1  | a different host than the one configured in your config/
app-1  | files. For example, in development the host is configured
app-1  | to "localhost" but you may be trying to access it from
app-1  | "127.0.0.1". To fix this issue, you may either:
app-1  | 
app-1  |   1. update [url: [host: ...]] to your actual host in the
app-1  |      config file for your current environment (recommended)
app-1  | 
app-1  |   2. pass the :check_origin option when configuring your
app-1  |      endpoint or when configuring the transport in your
app-1  |      UserSocket module, explicitly outlining which origins
app-1  |      are allowed:
app-1  | 
app-1  |         check_origin: ["https://example.com",
app-1  |                        "//another.com:888", "//other.com"]
app-1  | 
app-1  | 
app-1  | 09:47:21.972 [error] Could not check origin for Phoenix.Socket transport.

The server has an IP of 192.168.1.71, I'm trying to access it from another machine and I guess he's expecting to be accessed via localhost. Suggestions?

alxlion commented 10 months ago

I'm also having problems uploading a presentation, after spinning up the docker container and logging into the web interface. I get the following error

app-1  | 09:47:09.009 [info] Migrations already up
app-1  | 09:47:09.594 [info] Running ClaperWeb.Endpoint with cowboy 2.10.0 at 0.0.0.0:4000 (http)
app-1  | 09:47:09.595 [info] Access ClaperWeb.Endpoint at http://localhost:4000
app-1  | 09:47:16.805 [error] Could not check origin for Phoenix.Socket transport.
app-1  | 
app-1  | Origin of the request: http://192.168.1.71:4000
app-1  | 
app-1  | This happens when you are attempting a socket connection to
app-1  | a different host than the one configured in your config/
app-1  | files. For example, in development the host is configured
app-1  | to "localhost" but you may be trying to access it from
app-1  | "127.0.0.1". To fix this issue, you may either:
app-1  | 
app-1  |   1. update [url: [host: ...]] to your actual host in the
app-1  |      config file for your current environment (recommended)
app-1  | 
app-1  |   2. pass the :check_origin option when configuring your
app-1  |      endpoint or when configuring the transport in your
app-1  |      UserSocket module, explicitly outlining which origins
app-1  |      are allowed:
app-1  | 
app-1  |         check_origin: ["https://example.com",
app-1  |                        "//another.com:888", "//other.com"]
app-1  | 
app-1  | 
app-1  | 09:47:21.972 [error] Could not check origin for Phoenix.Socket transport.

The server has an IP of 192.168.1.71, I'm trying to access it from another machine and I guess he's expecting to be accessed via localhost. Suggestions?

You have to modify the ENDPOINT_HOST to 192.168.1.71 and ENDPOINT_PORT to 4000 (https://docs.claper.co/configuration.html#production-docker)

dmb4ur commented 10 months ago

Thanks for the quick reply. At the beginning of that documentation page you wrote "All configuration used by the app is stored in the .env file.". So I thought that I needed to specify ENDPOINT_HOST and ENDPOINT_PORT in the .env file. But now I tried to add it to the docker-compose.yml file and it finally worked :-) Very cool project. Thanks!

TiboLR34 commented 10 months ago

Hi,

I tried from scratch and replicated the video. Find out I had the same check origin issue.

When I define ENDPOINT_HOST to 192.168.0.82 (which is my linux server) it works fine. My apache configuration file handles https and certificate so any connection to claper.mydomain.fr goes to 192.168.0.82 It doesn't work through apache. I get the same check origin error message. I set the ENDPOINT_HOST claper.mydomain.fr It tries to check http://claper.mydomain.fr whereas it gets https://claper.mydomain.fr I tried to set ENDPOINT_HOST to https://claper.mydomain.fr but it says it looks for http://[https://claper.mydomain.fr]

How can I Set up the check origin for https ? using ENDPOINT_HOST 127.0.0.1 doesn't work either tried to edit config.exs to add check_origin: ["//claper.mydomain.fr"] but it doesn't help. While starting app-1 says to connect to http://claper.mydomain.fr

I'm pretty sure everything will work if it listens to https://claper.mydomain.fr

Thanks for your support

alxlion commented 9 months ago

Thanks for the quick reply. At the beginning of that documentation page you wrote "All configuration used by the app is stored in the .env file.". So I thought that I needed to specify ENDPOINT_HOST and ENDPOINT_PORT in the .env file. But now I tried to add it to the docker-compose.yml file and it finally worked :-) Very cool project. Thanks!

Thanks for bringing this to my attention, I'll change the documentation to be more clear about this point.

alxlion commented 9 months ago

Hi,

I tried from scratch and replicated the video. Find out I had the same check origin issue.

When I define ENDPOINT_HOST to 192.168.0.82 (which is my linux server) it works fine. My apache configuration file handles https and certificate so any connection to claper.mydomain.fr goes to 192.168.0.82 It doesn't work through apache. I get the same check origin error message. I set the ENDPOINT_HOST claper.mydomain.fr It tries to check http://claper.mydomain.fr whereas it gets https://claper.mydomain.fr I tried to set ENDPOINT_HOST to https://claper.mydomain.fr but it says it looks for http://[https://claper.mydomain.fr]

How can I Set up the check origin for https ? using ENDPOINT_HOST 127.0.0.1 doesn't work either tried to edit config.exs to add check_origin: ["//claper.mydomain.fr"] but it doesn't help. While starting app-1 says to connect to http://claper.mydomain.fr

I'm pretty sure everything will work if it listens to https://claper.mydomain.fr

Thanks for your support

Did you try with ENDPOINT_PORT at 443 ?

alxlion commented 7 months ago

The PPT file upload issue has been fixed on the dev branch and image tag and will be available in the next release.