[REQUEST] Cal.com (formerly Calendso)


avinyc
Go to solution Solved by avinyc,

Recommended Posts

I did not see any discussions about this self-hosted Calendly alternative.  I would be interested in running this unless there is a better option already available on unraid.

 

Docker Image: https://hub.docker.com/r/calcom/cal.com/

Homepage: https://cal.com/

 

Reddit link discussing the docker image installation issues: 

 

 

Curious what other think and if it is worth getting some assistance running it, thanks!

 

 

Link to comment
  • 9 months later...
  • Solution

Following up to this, and wanted to thank Ibracorp for adding the unraid template for this software to community apps (https://github.com/ibracorp/unraid-templates/blob/master/cal.com/cal.com.xml).  It works perfectly on my server after tweaking the template settings.  It requires following the documentation section for certain app store installs but very straight forward to modify and run (https://cal.com/docs/introduction/quick-start/self-hosting/install-apps).  Setup instructions to get it initially working are here: https://hub.docker.com/r/calcom/cal.com

 

For reverse proxy, the ip address instead of the container name worked for me.

Edited by avinyc
Link to comment
  • 2 weeks later...
On 11/12/2023 at 9:49 AM, garryslash said:

Did you by a commercial license from them? From my looking at the source, the payment stuff is all under their commercial license, not open source. Upon that, from when I last tested 6 months or so ago, it was not possible to generally run the application using just the open source code, at least without fairly heavy edits.

No, it works the same self-hosted as if you use the free version directly on their site.  Everything runs smoothly, but yes you don't get the extra features that are included with a paid license.  If you want to try again, let me know what issue you are having to get it running and maybe I can help.

 

Link to comment
  • 2 months later...
On 11/3/2023 at 3:45 PM, avinyc said:

Following up to this, and wanted to thank Ibracorp for adding the unraid template for this software to community apps (https://github.com/ibracorp/unraid-templates/blob/master/cal.com/cal.com.xml).  It works perfectly on my server after tweaking the template settings.  It requires following the documentation section for certain app store installs but very straight forward to modify and run (https://cal.com/docs/introduction/quick-start/self-hosting/install-apps).  Setup instructions to get it initially working are here: https://hub.docker.com/r/calcom/cal.com

 

For reverse proxy, the ip address instead of the container name worked for me.

did app get removed? not seen it in the app store

Link to comment
12 minutes ago, Tolete said:

did app get removed? not seen it in the app store

 

Strange, I don't see it in community apps either now.  I don't know what happened but the template is still listed in the link I posted previously.  If you are comfortable with setting up the template manually, you can click on "Click Here To Get More Results From DockerHub" and install the official docker image and add the environment varibles yourself.  I can help share details if it's helpful, but it is strange they removed it from CA for no reason.

Link to comment
16 minutes ago, avinyc said:

 

Strange, I don't see it in community apps either now.  I don't know what happened but the template is still listed in the link I posted previously.  If you are comfortable with setting up the template manually, you can click on "Click Here To Get More Results From DockerHub" and install the official docker image and add the environment varibles yourself.  I can help share details if it's helpful, but it is strange they removed it from CA for no reason.

 

i just added the template manually.
 

cd /boot/config/plugins/dockerMan/templates-user

 

 

nano my-cal.com.xml

 

-Paste XML

<?xml version="1.0"?>
<Container version="2">
  <Name>cal.com</Name>
  <Repository>calcom/cal.com:latest</Repository>
  <Registry>https://hub.docker.com/r/calcom/cal.com</Registry>
  <Network>bridge</Network>
  <MyIP/>
  <Shell>sh</Shell>
  <Privileged>false</Privileged>
  <Support/>
  <Project/>
  <Overview>The open source Calendly alternative. You are in charge of your own data, workflow and appearance.&#xD;
</Overview>
  <Category>Productivity: Tools:</Category>
  <WebUI>http://[IP]:[PORT:3000]</WebUI>
  <TemplateURL/>
  <Icon>https://i.imgur.com/mwmNzNQ.png</Icon>
  <ExtraParams/>
  <PostArgs/>
  <CPUset/>
  <DateInstalled>1681261202</DateInstalled>
  <DonateText/>
  <DonateLink/>
  <Requires/>
  <Config Name="WebUI" Target="3000" Default="" Mode="tcp" Description="" Type="Port" Display="always" Required="false" Mask="false">3000</Config>
  <Config Name="Config" Target="/cal" Default="" Mode="rw" Description="" Type="Path" Display="always" Required="false" Mask="false">/mnt/user/appdata/cal.com/</Config>
  <Config Name="NEXT_PUBLIC_WEBAPP_URL" Target="NEXT_PUBLIC_WEBAPP_URL" Default="" Mode="" Description="http://serverIP:PORT" Type="Variable" Display="always" Required="true" Mask="false"/>
  <Config Name="CALCOM_TELEMETRY_DISABLED" Target="CALCOM_TELEMETRY_DISABLED" Default="" Mode="" Description="" Type="Variable" Display="always" Required="true" Mask="false">1</Config>
  <Config Name="NEXTAUTH_SECRET" Target="NEXTAUTH_SECRET" Default="" Mode="" Description="" Type="Variable" Display="always" Required="true" Mask="false"/>
  <Config Name="CALENDSO_ENCRYPTION_KEY" Target="CALENDSO_ENCRYPTION_KEY" Default="" Mode="" Description="" Type="Variable" Display="always" Required="true" Mask="false"/>
  <Config Name="DATABASE_URL" Target="DATABASE_URL" Default="" Mode="" Description="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DATABASE_HOST}/${POSTGRES_DB}" Type="Variable" Display="always" Required="true" Mask="false"/>
  <Config Name="NEXTAUTH_URL" Target="NEXTAUTH_URL" Default="" Mode="" Description="http://serverIP:PORT/api/auth" Type="Variable" Display="always" Required="true" Mask="false"/>
  <Config Name="EMAIL_FROM" Target="EMAIL_FROM" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false"/>
  <Config Name="EMAIL_SERVER_HOST" Target="EMAIL_SERVER_HOST" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false"/>
  <Config Name="EMAIL_SERVER_PORT" Target="EMAIL_SERVER_PORT" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false"/>
  <Config Name="EMAIL_SERVER_USER" Target="EMAIL_SERVER_USER" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="false"/>
  <Config Name="EMAIL_SERVER_PASSWORD" Target="EMAIL_SERVER_PASSWORD" Default="" Mode="" Description="" Type="Variable" Display="always" Required="false" Mask="true"/>
</Container>

Save

- Ctrl + O and Ctrl + X

 

-Than, just install from 'templates'
-Go to Docker > Add Container > and search for cal.com on the list.

Edited by Tolete
Link to comment

Glad you could get it running.  If you need additional variables to add, they are all listed here: https://github.com/calcom/cal.com/blob/main/.env.example

 

I had to throw in ALLOWED_HOSTNAMES and RESERVED_SUBDOMAINS I think to get the reverse proxy working correctly.  The rest of them are related to the different apps they offer.  The documentation was very clear to get them installed.

Edited by avinyc
Link to comment

Hello everyone, I have been using this template for several months now and recently there have been many updates from both cal.com and postgres. I don't know why, but it started to fail and didn't show the reservations when I logged in.

 

I had to downgrade to version v.3.7.11 to make it work again. And then I tried newer versions until I couldn't even log in, so my docker became useless. Interestingly, I noticed that the template also disappeared from the CA of unraid (the one mentioned by ibracorp) and now I'm trying to do it manually but I can't seem to get past connection and prisma errors... 

@calcom/web:start: The provided database string is invalid. Error parsing connection string: invalid port number in database URL. Please refer to the documentation in https://www.prisma.io/docs/reference/database-reference/connection-urls for constructing a correct connection string. In some cases, certain characters must be escaped. Please check the string for any illegal characters.
@calcom/web:start:     at Cn.handleRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:7090)
@calcom/web:start:     at Cn.handleAndLogRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:6206)
@calcom/web:start:     at Cn.request (/calcom/node_modules/@prisma/client/runtime/library.js:123:5926)
@calcom/web:start:     at async l (/calcom/node_modules/@prisma/client/runtime/library.js:128:9968)
@calcom/web:start:     at async getServerSideProps (/calcom/apps/web/.next/server/pages/auth/login.js:1:10204) {
@calcom/web:start:   clientVersion: '5.4.2',
@calcom/web:start:   errorCode: undefined
@calcom/web:start: }
@calcom/web:start: react-i18next:: You will need to pass in an i18next instance by using initReactI18next
@calcom/web:start: 13:35:14:306 ERROR[redactError] Error:  {"name":"PrismaClientInitializationError","clientVersion":"5.4.2"}
@calcom/web:start: PrismaClientInitializationError: 
@calcom/web:start: Invalid `prisma.user.count()` invocation:

I had a $ in the password of the PostgreSQL DB and I changed it in case the illegal character was causing issues, but it still gives an error even though I recreated the DB again (same name and user, I admit it).

 

I'm desperate because it's an incredible application for managing my environment and it's broken in production. Any similar experiences? Is it a problem with postgres? the latest dockers? Do you know if there are solutions for the converted templates to work? Or is it a matter of deleting the entire DB (which I did) and the DB user (which I didn't) and starting from this point? Thanks for the help, greetings!

Link to comment
44 minutes ago, NexusEFR said:

Hello everyone, I have been using this template for several months now and recently there have been many updates from both cal.com and postgres. I don't know why, but it started to fail and didn't show the reservations when I logged in.

 

I had to downgrade to version v.3.7.11 to make it work again. And then I tried newer versions until I couldn't even log in, so my docker became useless. Interestingly, I noticed that the template also disappeared from the CA of unraid (the one mentioned by ibracorp) and now I'm trying to do it manually but I can't seem to get past connection and prisma errors... 

@calcom/web:start: The provided database string is invalid. Error parsing connection string: invalid port number in database URL. Please refer to the documentation in https://www.prisma.io/docs/reference/database-reference/connection-urls for constructing a correct connection string. In some cases, certain characters must be escaped. Please check the string for any illegal characters.
@calcom/web:start:     at Cn.handleRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:7090)
@calcom/web:start:     at Cn.handleAndLogRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:6206)
@calcom/web:start:     at Cn.request (/calcom/node_modules/@prisma/client/runtime/library.js:123:5926)
@calcom/web:start:     at async l (/calcom/node_modules/@prisma/client/runtime/library.js:128:9968)
@calcom/web:start:     at async getServerSideProps (/calcom/apps/web/.next/server/pages/auth/login.js:1:10204) {
@calcom/web:start:   clientVersion: '5.4.2',
@calcom/web:start:   errorCode: undefined
@calcom/web:start: }
@calcom/web:start: react-i18next:: You will need to pass in an i18next instance by using initReactI18next
@calcom/web:start: 13:35:14:306 ERROR[redactError] Error:  {"name":"PrismaClientInitializationError","clientVersion":"5.4.2"}
@calcom/web:start: PrismaClientInitializationError: 
@calcom/web:start: Invalid `prisma.user.count()` invocation:

I had a $ in the password of the PostgreSQL DB and I changed it in case the illegal character was causing issues, but it still gives an error even though I recreated the DB again (same name and user, I admit it).

 

I'm desperate because it's an incredible application for managing my environment and it's broken in production. Any similar experiences? Is it a problem with postgres? the latest dockers? Do you know if there are solutions for the converted templates to work? Or is it a matter of deleting the entire DB (which I did) and the DB user (which I didn't) and starting from this point? Thanks for the help, greetings!

I am not qualified to provide actual support, but as another user that has this working on his unraid server I am happy to share whatever I can to get more people running this container.  It is a great application when working.

 

I reached out to @Squid about why the template was removed from community apps and was told that it lacked support or project tags with applicable urls to the template.  If the developers or anyone that maintains the templates wants to do that, it would return to community apps.

 

@Tolete provided his XML template which should work for a manual install.  You would need to follow the steps to add it that way and it should run.

 

As for the prisma error, I found this link which suggests using this command in your console: 

npx prisma generate

 

I don't know if you messed with the postgres settings so it might be safer to do a fresh install of a new DB.  Here's a tutorial video that I used and should be enough to get it running again as long as the container install goes smoothly.

 

Good luck!

Edited by avinyc
tagged users
Link to comment

Okay, it seems that I have managed to bring it up, and when trying to set the first user as an administrator, on the assistant's web interface, it does not proceed to step 2 and starts returning errors in the console like these:

@calcom/web:start: 15:56:11:916 ERROR[redactError] Error:  {"name":"PrismaClientKnownRequestError","code":"P2021","clientVersion":"5.4.2","meta":{"table":"public.UserPassword"}}
@calcom/web:start: PrismaClientKnownRequestError: 
@calcom/web:start: Invalid `prisma.user.create()` invocation:
@calcom/web:start: 
@calcom/web:start: 
@calcom/web:start: The table `public.UserPassword` does not exist in the current database.
@calcom/web:start:     at Cn.handleRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:6817)
@calcom/web:start:     at Cn.handleAndLogRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:6206)
@calcom/web:start:     at Cn.request (/calcom/node_modules/@prisma/client/runtime/library.js:123:5926)
@calcom/web:start:     at async l (/calcom/node_modules/@prisma/client/runtime/library.js:128:9968)
@calcom/web:start:     at async handler (/calcom/apps/web/.next/server/pages/api/auth/setup.js:1:1616)
@calcom/web:start:     at async /calcom/apps/web/.next/server/chunks/70349.js:1:974
@calcom/web:start:     at async /calcom/apps/web/.next/server/pages/api/auth/setup.js:1:3920 {
@calcom/web:start:   code: 'P2021',
@calcom/web:start:   clientVersion: '5.4.2',
@calcom/web:start:   meta: { table: 'public.UserPassword' }
@calcom/web:start: }

 

And checking the cal.com documentation on Docker installation mentions this error in Prisma that can occur, and it matches the error in my console logs, but I don't know how to modify that parameter or how to reach it in Docker. Does anyone know how to include that space in the user, in an empty JSON object? 

https://cal.com/docs/introduction/quick-start/self-hosting/docker#troubleshooting

Quote

Failed to commit changes: Invalid 'prisma.user.create()': Certain versions may have trouble creating a user if the field metadata is empty. Using an empty json object {} as the field value should resolve this issue. Also, the id field will autoincrement, so you may also try leaving the value of id as empty.

 

Link to comment
5 minutes ago, NexusEFR said:

Okay, it seems that I have managed to bring it up, and when trying to set the first user as an administrator, on the assistant's web interface, it does not proceed to step 2 and starts returning errors in the console like these:

@calcom/web:start: 15:56:11:916 ERROR[redactError] Error:  {"name":"PrismaClientKnownRequestError","code":"P2021","clientVersion":"5.4.2","meta":{"table":"public.UserPassword"}}
@calcom/web:start: PrismaClientKnownRequestError: 
@calcom/web:start: Invalid `prisma.user.create()` invocation:
@calcom/web:start: 
@calcom/web:start: 
@calcom/web:start: The table `public.UserPassword` does not exist in the current database.
@calcom/web:start:     at Cn.handleRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:6817)
@calcom/web:start:     at Cn.handleAndLogRequestError (/calcom/node_modules/@prisma/client/runtime/library.js:123:6206)
@calcom/web:start:     at Cn.request (/calcom/node_modules/@prisma/client/runtime/library.js:123:5926)
@calcom/web:start:     at async l (/calcom/node_modules/@prisma/client/runtime/library.js:128:9968)
@calcom/web:start:     at async handler (/calcom/apps/web/.next/server/pages/api/auth/setup.js:1:1616)
@calcom/web:start:     at async /calcom/apps/web/.next/server/chunks/70349.js:1:974
@calcom/web:start:     at async /calcom/apps/web/.next/server/pages/api/auth/setup.js:1:3920 {
@calcom/web:start:   code: 'P2021',
@calcom/web:start:   clientVersion: '5.4.2',
@calcom/web:start:   meta: { table: 'public.UserPassword' }
@calcom/web:start: }

 

And checking the cal.com documentation on Docker installation mentions this error in Prisma that can occur, and it matches the error in my console logs, but I don't know how to modify that parameter or how to reach it in Docker. Does anyone know how to include that space in the user, in an empty JSON object? 

https://cal.com/docs/introduction/quick-start/self-hosting/docker#troubleshooting

 

It's telling you there is a missing table in your database, I am guessing the db is not set up correctly or got corrupted.

Link to comment
1 hour ago, avinyc said:

I am not qualified to provide actual support, but as another user that has this working on his unraid server I am happy to share whatever I can to get more people running this container.  It is a great application when working.

 

I reached out to @Squid about why the template was removed from community apps and was told that it lacked support or project tags with applicable urls to the template.  If the developers or anyone that maintains the templates wants to do that, it would return to community apps.

 

@Tolete provided his XML template which should work for a manual install.  You would need to follow the steps to add it that way and it should run.

 

As for the prisma error, I found this link which suggests using this command in your console: 

npx prisma generate

 

I don't know if you messed with the postgres settings so it might be safer to do a fresh install of a new DB.  Here's a tutorial video that I used and should be enough to get it running again as long as the container install goes smoothly.

 

Good luck!

Thanks avinyc! Well, after managing to start it, I'm also getting the Prisma error, but with what I mentioned in the previous post. I'll see if I can continue, the truth is that this docker on unraid is costing a lot to keep it without errors just to start it. And that cost me much more to create pretix from scratch. Greetings and thanks again!

Link to comment

Should I try to insert that table with pgadmin into the cal.com database? I don't know how to do anything with pgadmin, but I will search if it is possible because that's what the cal.com help says to avoid the error.

 

Anyway, I managed to get it up and running until I reached the platform with the created admin and another user, but I did it using version v3.7.11, because using the later versions breaks the system and either doesn't allow login or doesn't load the login screen.

 

What I don't understand is why this happens with the docker in unraid, since they have released so many versions until today, reaching v3.8.0, because those who use docker on Linux or manually, it does work for them. Some variable or parameter fails, or something inside the docker is not set correctly. If anyone has experience with the latest versions that work for them, please shed some light on the subject.

Link to comment

By the way, this returns the console with the npx prisma generate command.

npx prisma generate
Prisma schema loaded from packages/prisma/schema.prisma
Error: Generator "ts-node --transpile-only ./enum-generator" failed:

node:internal/modules/cjs/loader:1137
  throw err;
  ^
Error: Cannot find module './enum-generator'
Require stack:
- /calcom/imaginaryUncacheableRequireResolveScript
    at Module._resolveFilename (node:internal/modules/cjs/loader:1134:15)
    at Function.resolve (node:internal/modules/helpers:188:19)
    at requireResolveNonCached (/calcom/node_modules/ts-node/dist/bin.js:549:16)
    at getProjectSearchDir (/calcom/node_modules/ts-node/dist/bin.js:519:40)
    at phase3 (/calcom/node_modules/ts-node/dist/bin.js:267:27)
    at bootstrap (/calcom/node_modules/ts-node/dist/bin.js:47:30)
    at main (/calcom/node_modules/ts-node/dist/bin.js:33:12)
    at Object.<anonymous> (/calcom/node_modules/ts-node/dist/bin.js:579:5)
    at Module._compile (node:internal/modules/cjs/loader:1356:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1414:10) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ '/calcom/imaginaryUncacheableRequireResolveScript' ]
}
Node.js v18.19.0

 

Could you please tell me what release you have installed or when you have installed it because the pace of releases since February 7th when you published your message, has been frenetic. 

 

https://github.com/calcom/cal.com/compare/v3.7.10...v3.8.0

 

Thank you, greetings and have a good weekend.

Link to comment

Well, I'm still figuring things out. The thing is, the GitHub changelog is not the same as the dockerhub changelog and the tags prove it. 

https://hub.docker.com/r/calcom/cal.com/tags

 

If you try to pull down the images between V3.7.11 and v3.7.14 they don't exist, because the available images are these and the ones that can be downloaded as upgradable. So this tells me that version V3.7.15 already breaks the docker login of the cal.com app, because in version v3.7.11 everything works. Someone has tried with the latest version to perform the installation, so calcom/cal.com:latest

 

image.png.a667512fc519fe5b6dfd0445538b2184.png

Link to comment
4 hours ago, NexusEFR said:

Could you please tell me what release you have installed or when you have installed it because the pace of releases since February 7th when you published your message, has been frenetic. 

 

https://github.com/calcom/cal.com/compare/v3.7.10...v3.8.0

 

Thank you, greetings and have a good weekend.

 

My repository is set as calcom/cal.com:latest

 

So it's pulling the latest container from here: https://hub.docker.com/r/calcom/cal.com/tags

I see the versions here don't match the date of the latest pull: https://github.com/calcom/docker/releases

 

It's not recommended to use the latest tag but I leave it for some of my containers anyway. If I had to take guess based on the last pull it is probably the v3.7.17 image. 

Edited by avinyc
Link to comment
3 hours ago, NexusEFR said:

Well, I'm still figuring things out. The thing is, the GitHub changelog is not the same as the dockerhub changelog and the tags prove it. 

https://hub.docker.com/r/calcom/cal.com/tags

 

If you try to pull down the images between V3.7.11 and v3.7.14 they don't exist, because the available images are these and the ones that can be downloaded as upgradable. So this tells me that version V3.7.15 already breaks the docker login of the cal.com app, because in version v3.7.11 everything works. Someone has tried with the latest version to perform the installation, so calcom/cal.com:latest

 

image.png.a667512fc519fe5b6dfd0445538b2184.png

I think docker hub isn't showing those versions is because they came out at the same time and building the containers would have been a waste.  I know the latest container works for me, but again there is another component that may be the culprit here.  What version of postgresql are you running?  I am on 15 (specifically 15.6 according to my logs) and have not upgraded to 16 yet.

 

Link to comment
On 2/16/2024 at 3:22 PM, avinyc said:

 

My repository is set as calcom/cal.com:latest

 

So it's pulling the latest container from here: https://hub.docker.com/r/calcom/cal.com/tags

I see the versions here don't match the date of the latest pull: https://github.com/calcom/docker/releases

 

It's not recommended to use the latest tag but I leave it for some of my containers anyway. If I had to take guess based on the last pull it is probably the v3.7.17 image. 

Yes, I was also trying to use the :latest because I want a new feature of the new versions (the recipient of the meeting invitation has a text box to put a link to their own video conferencing system on the booking page of the sent or shared appointment) but the login module breaks.

Could you put your template as you have it with the hidden fields of your sensitive data? I've tried everything, with many variables including... Do you have a reverse proxy on your unraid? Nginx proxy manager maybe and from what version of the unraid CA store? I'm planning to switch to the official jc21 repository instead of jlesage because it doesn't update and they say it's less secure.

 

Edit: 

I also put my template better in case it looks something strange, the node and yarn fields were imported when using the CA store conversion, since the ibracorp template disappeared (which also failed me with the latest versions) but the important thing is put (including ALLOWED HOSTNAMES and RESERVE SUBDOMAINS)

 

docker run
  -d
  --name='CAL.COM'
  --net='bridge'
  -e TZ="Europe/Paris"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="UnRaid"
  -e HOST_CONTAINERNAME="CAL.COM"
  -e 'NODE_VERSION'='18.19.0'
  -e 'YARN_VERSION'='1.22.19'
  -e 'NEXT_PUBLIC_WEBAPP_URL'='https://my.domain.com'
  -e 'NODE_ENV'='production'
  -e 'Community_Applications_Conversion'='true'
  -e 'CALCOM_TELEMETRY_DISABLED'='1'
  -e 'NEXTAUTH_SECRET'='xxxxxxxxxxxxxvaFGGjSpTJjQK0SrHMbIqoE9ItrKpv9Y='
  -e 'CALENDSO_ENCRYPTION_KEY'='l7DbGjqJJGJmcC5862LYxxxxxxxxxxxxxx'
  -e 'EMAIL_FROM'='[email protected]'
  -e 'EMAIL_SERVER_HOST'='vps.daomain.com'
  -e 'EMAIL_SERVER_PORT'='465'
  -e 'EMAIL_SERVER_USER'='[email protected]'
  -e 'EMAIL_SERVER_PASSWORD'='password'
  -e 'DATABASE_URL'='postgresql://admcalcom:[email protected]:5432/calcomdb'
  -e 'ALLOWED_HOSTNAMES'='"localhost:3000","localhost:3003","10.255.176.218:3003","172.17.0.4:3000","10.255.176.123:5432","172.17.0.4:5432","my.domain.com","domain.com"'
  -e 'NEXTAUTH_URL'='https://my.domain.com/auth/login'
  -e 'RESERVED_SUBDOMAINS:'='"app","auth","docs","design","console","go","status","api","saml","www","matrix","developer","cal","my","team","support","security","blog","learn","admin","subdomain","domain","login"'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://10.255.176.123:3003'
  -l net.unraid.docker.icon='https://i.imgur.com/mwmNzNQ.png'
  -p '3003:3000/tcp'
  -v '/mnt/user/appdata/calcom/':'/cal':'rw' 'calcom/cal.com:latest'

 

 

Edited by NexusEFR
Link to comment
On 2/16/2024 at 3:33 PM, avinyc said:

I think docker hub isn't showing those versions is because they came out at the same time and building the containers would have been a waste.  I know the latest container works for me, but again there is another component that may be the culprit here.  What version of postgresql are you running?  I am on 15 (specifically 15.6 according to my logs) and have not upgraded to 16 yet.

 

I'm running the same PostgreSQL engine as you, version 15.6 
I don't think the problem should be there, since in previous versions of docker everything goes well, until v3.7.11😩

 

Edit: These are the current errors when trying to log in with the login

 

@calcom/web:start: [next-auth][error][CLIENT_FETCH_ERROR] 
@calcom/web:start: https://next-auth.js.org/errors#client_fetch_error Unexpected token < in JSON at position 0 {
@calcom/web:start:   error: {
@calcom/web:start:     message: 'Unexpected token < in JSON at position 0',
@calcom/web:start:     stack: 'SyntaxError: Unexpected token < in JSON at position 0\n' +
@calcom/web:start:       '    at JSON.parse (<anonymous>)\n' +
@calcom/web:start:       '    at parseJSONFromBytes (node:internal/deps/undici/undici:4747:19)\n' +
@calcom/web:start:       '    at successSteps (node:internal/deps/undici/undici:4718:27)\n' +
@calcom/web:start:       '    at fullyReadBody (node:internal/deps/undici/undici:1433:9)\n' +
@calcom/web:start:       '    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n' +
@calcom/web:start:       '    at async specConsumeBody (node:internal/deps/undici/undici:4727:7)',
@calcom/web:start:     name: 'SyntaxError'
@calcom/web:start:   },
@calcom/web:start:   url: 'https://my.domain.com/auth/login/csrf',
@calcom/web:start:   message: 'Unexpected token < in JSON at position 0'
@calcom/web:start: }

 

Edited by NexusEFR
more data
Link to comment
34 minutes ago, NexusEFR said:

Yes, I was also trying to use the :latest because I want a new feature of the new versions (the recipient of the meeting invitation has a text box to put a link to their own video conferencing system on the booking page of the sent or shared appointment) but the login module breaks.

Could you put your template as you have it with the hidden fields of your sensitive data? I've tried everything, with many variables including... Do you have a reverse proxy on your unraid? Nginx proxy manager maybe and from what version of the unraid CA store? I'm planning to switch to the official jc21 repository instead of jlesage because it doesn't update and they say it's less secure.

I had to redact a lot of the fields, but this is what my calcom template looks like in unRaid:
Sample calcom template

Link to comment
41 minutes ago, NexusEFR said:

Do you have a reverse proxy on your unraid? Nginx proxy manager maybe and from what version of the unraid CA store? I'm planning to switch to the official jc21 repository instead of jlesage because it doesn't update and they say it's less secure.

I use swag (formerly LetsEncrypt) as my reverse proxy.  I attached my .conf file, just need to edit the server details and everything else is pretty much default.

calcom.subdomain.conf

Link to comment
On 2/20/2024 at 5:29 PM, avinyc said:

I had to redact a lot of the fields, but this is what my calcom template looks like in unRaid:
Sample calcom template

Thank you so much for sharing your template, by the way, amazing you have also set up all the API variables for payment gateways (stripe, etc.) for Cal.com and video conferencing systems.

So do you have an enterprise-licensed version of cal.com? Because the APIs only work in the paid version, or at least that's what they say, although you can also put the API keys on the web platform, right?

 

Another thing, you have the network in direct custom mode, not in bridge right? I have it in bridge mode, it could affect this maybe.  I don't understand why it doesn't work for me, but I appreciate your effort and support.

Link to comment
21 minutes ago, NexusEFR said:

Thank you so much for sharing your template, by the way, amazing you have also set up all the API variables for payment gateways (stripe, etc.) for Cal.com and video conferencing systems.

So do you have an enterprise-licensed version of cal.com? Because the APIs only work in the paid version, or at least that's what they say, although you can also put the API keys on the web platform, right?

 

Another thing, you have the network in direct custom mode, not in bridge right? I have it in bridge mode, it could affect this maybe.  I don't understand why it doesn't work for me, but I appreciate your effort and support.

Nope, I set up each one of them following the documentation and do not have the enterprise license.  It's running self-hosted and free without any cost.  The only one I couldn't set up was microsoft teams because it requires a work or school account.  Here is the link to the documentation, but setting them up does not require you having a license: https://cal.com/docs/introduction/quick-start/self-hosting/install-apps

 

My reverse proxy was set up using @SpaceInvaderOne's letsencrypt tutorial:

 

It is now swag, but the setup should still work: 

 

 

The instructions have you set up a custom network for the proxy container to work properly, otherwise I don't think it will protect any of the traffic to your server.  Bridge mode will work if you want to access it directly, but if you are exposing this to the world, you wouldn't want that open your server.  If you haven't set up a reverse proxy, I would start there first.

 

Link to comment
18 hours ago, avinyc said:

No, configuré cada uno de ellos siguiendo la documentación y no tengo la licencia empresarial. Se ejecuta de forma autohospedada y es gratuita, sin ningún coste. El único que no pude configurar fue Microsoft Teams porque requiere una cuenta profesional o educativa. Aquí está el enlace a la documentación, pero para configurarlos no es necesario tener una licencia:  https://cal.com/docs/introduction/quick-start/self-hosting/install-apps

 

Mi proxy inverso se configuró usando@SpaceInvaderOneTutorial de letsencrypt:

 

Ahora es un botín, pero la configuración aún debería funcionar: 

 

 

Las instrucciones le indican que configure una red personalizada para que el contenedor proxy funcione correctamente; de lo contrario, no creo que proteja el tráfico a su servidor. El modo puente funcionará si deseas acceder a él directamente, pero si lo estás exponiendo al mundo, no querrás que abra tu servidor. Si no ha configurado un proxy inverso, comenzaría por ahí primero.

 

Okay, I'll put some more APIs, but I tried to put the Ghipy and it didn't work well, I said I couldn't find it and that's why I thought it was only for paid cal.com licenses (the api was put inside the cal.com web console, not in docker variables, and that's what I did also with Google's,  many of them can be entered into the web console itself). 
I have the reverse proxy with NPM (Nginx proxy manager) and it works well in bridge mode with many more dockers that I have running (freescout, pingvin-share, projectsend, s-pdf,etc.) but I didn't know what was better to cal.com a custom dedicated network (local network ip range). And I've tried setting up cal.com with custom networking, but the login error still continues. 
Thanks again.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.