I’m currently encountering challenges while attempting to deploy TagSpaces Web and could use some guidance.
Here’s an overview of my setup:
I’m running a VM with the IP 192.168.64.8.
I’ve exposed a folder via s3proxy on this VM.
Two Docker containers are running on the same VM: s3proxy (172.17.0.2) and tagspaces-web:5.5.2 (172.17.0.3). Both containers can successfully ping each other within the 172.17.0.0 network.
When accessing TagSpaces on my host machine’s browser (which can ping 192.168.64.8 but not 172.17.0.2, as expected), I can create a new location using http ://192.168.64.8:9000 as the endpoint URL for my s3 bucket. Despite some CORS error messages in the browser console (even with S3PROXY_CORS_ALLOW_ALL=“true”), everything works.
However, issues arise when attempting to use http ://172.17.0.1:9000 or http ://172.17.0.2:9000. The problem persists even when configuring the location in the extconfig.js file.
To extend the service to my team and deploy it on an AWS VM, I replicated the exact configuration. Despite the TagSpaces pages appearing when accessed via the public IP of the host, I’m unable to access the files exposed via s3proxy, regardless of the IP used. Even when using the open port 9000 on the public IP (not a viable long-term solution), the browser console displays the errors below, and the Docker logs remain clear.
I’m wondering if there’s something I’m overlooking or if my goal is unattainable with this version of TagSpaces. Any insights or guidance would be greatly appreciated.
Thanks a lot.
[Error] XMLHttpRequest cannot load http ://X.X.X.X:9000/4_Planches?list-type=2&delimiter=%2F&prefix= due to access control checks.
[Error] Failed to load resource: Preflight response is not successful. Status code: 403 (4_Planches, line 0)
[Error] Preflight response is not successful. Status code: 403
[Error] XMLHttpRequest cannot load http ://X.X.X.X:9000/4_Planches?list-type=2&delimiter=%2F&prefix= due to access control checks.
[Error] Failed to load resource: Preflight response is not successful. Status code: 403 (4_Planches, line 0)
[Error] Preflight response is not successful. Status code: 403
[Error] XMLHttpRequest cannot load http ://X.X.X.X:9000/4_Planches?list-type=2&delimiter=%2F&prefix= due to access control checks.
[Error] Error listing directory bucketName:4_Planches – NetworkingError: Network Failure
NetworkingError: Network Failure
(fonction anonyme) (bundle.js:75:238357)
[Error] Error loading directory: – NetworkingError: Network Failure
NetworkingError: Network Failure
(fonction anonyme) (bundle.js:75:1694867)
(fonction anonyme) (bundle.js:75:1693935)
[Error] Failed to load resource: Preflight response is not successful. Status code: 403 (4_Planches, line 0)
PS: Had to alter the urls because I’m not allowed to make a post with more than 2 links
Ok, now I see what the problem could be… You should create the location with the 192.168.64.8 IP since this is the IP which is accessible from your browser. The browser is making a direct connection to the S3proxy bucket. TagSapces Web is not a back-end application, it hast only front end which is downloaded to browser and the communication runs from there.
Hi,
Me again.
So I run my instance on AWS and I have, for now, open ports 5000 and 9000 to my personal IP.
From home, I can access http://aws_ip:5000 where my Tagspaces is hosted and I’m able to add a location with this endpointURL http://aws_ip:9000.
Now, I want this location to be configured in my extconfig.js file. So I add this to my file:
Yes, for the extconfig.js, but keep in mind that this way anybody knowing that extconfig.js exist can access it and read the access keys for your bucket.
This is not a problem: [Error] XMLHttpRequest cannot load http://35.181.166.43:9000/4_Planches/Planches/.ts/tsm.json due to access control checks.
TagSpaces checks for any folder if it has a tsm.json, which contains the tags for the folder. And if the file does not exist you will see this error in the dev console.
Are able to access other files in this bucket ?
Hi,
Me again trying to make my Tagspaces web working with domain name and not IPs.
So my server is running on an aws VM with tagspaces on port 5000 and s3-proxy on port 9000. When using the IPs, everything works.
I created a subdomain for both services: ts dot mydomain dot com and s3.mydomain.com ts.mydomain.com is working, when I curl https://s3.mydomain.com/my_s3_bucket, I’m able to see the files in there. But when I add a location in Tagspaces using this url, I have a Network failure message. Using the IP:Port url does not work neither.