fethica / jikan-rest-docker Goto Github PK
View Code? Open in Web Editor NEW๐ณ A docker stack for Jikan REST API
Home Page: https://github.com/jikan-me/jikan-rest
๐ณ A docker stack for Jikan REST API
Home Page: https://github.com/jikan-me/jikan-rest
Greetings,
i am pretty new to these topics so sorry for any weird questions in advance.
i was trying to host the docker on my machine using Visual studio code though after building the image i can't run it using it's own default run which is run-jikan.sh ( since i am on windows i guess?)
and my only way to run it was to type the command on powershell
docker-compose up -d
which is ok but what if i wanted to host it some where like azure, it uses the default run in the image.
i tried to change the docker file to be like this
ENTRYPOINT ["docker-compose up -d"]
but it doesn't seem to work.
here is the output when i just click run on the image
docker run --rm -d -p 80:80/tcp jikan-rest-img:latest
27004a1db29323974690dbe91518d85e6c02b927d5005868b98b475662b7ecbd C:\Program Files\Docker\Docker\resources\bin\docker.exe: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"./run-jikan.sh\": stat ./run-jikan.sh: no such file or directory": unknown.
even the ports it is not using the 9000:80 by default, i tried it but it is the same
Thank you.
Hey, when browsing to http://ip:9000 with ip being my IP I get
Forbidden
You don't have permission to access / on this server.
And it seems logs show me
AH01276: Cannot serve directory /var/www/html/: No matching DirectoryIndex (index.php,index.html) found, and server-generated directory index forbidden by Options directive
And trying to go on http://ip:9000/public/v3
gives me
<br />
<b>Fatal error</b>: Uncaught UnexpectedValueException: The stream or file "/var/www/html/storage/logs/lumen.log" could not be opened: failed to open stream: Permission denied in /var/www/html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:107
Stack trace:
#0 /var/www/html/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(39): Monolog\Handler\StreamHandler->write(Array)
#1 /var/www/html/vendor/monolog/monolog/src/Monolog/Logger.php(344): Monolog\Handler\AbstractProcessingHandler->handle(Array)
#2 /var/www/html/vendor/monolog/monolog/src/Monolog/Logger.php(707): Monolog\Logger->addRecord(400, Object(UnexpectedValueException), Array)
#3 /var/www/html/vendor/laravel/lumen-framework/src/Exceptions/Handler.php(45): Monolog\Logger->error(Object(UnexpectedValueException))
#4 /var/www/html/app/Exceptions/Handler.php(46): Laravel\Lumen\Exceptions\Handler->report(Object(UnexpectedValueException))
#5 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RegistersExceptionHandlers.php(122): App\Except in <b>/var/www/html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php</b> on line <b>107</b><br />
<br />
<b>Fatal error</b>: Uncaught UnexpectedValueException: The stream or file "/var/www/html/storage/logs/lumen.log" could not be opened: failed to open stream: Permission denied in /var/www/html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:107
Stack trace:
#0 /var/www/html/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(39): Monolog\Handler\StreamHandler->write(Array)
#1 /var/www/html/vendor/monolog/monolog/src/Monolog/Logger.php(344): Monolog\Handler\AbstractProcessingHandler->handle(Array)
#2 /var/www/html/vendor/monolog/monolog/src/Monolog/Logger.php(707): Monolog\Logger->addRecord(400, Object(Symfony\Component\Debug\Exception\FatalErrorException), Array)
#3 /var/www/html/vendor/laravel/lumen-framework/src/Exceptions/Handler.php(45): Monolog\Logger->error(Object(Symfony\Component\Debug\Exception\FatalErrorException))
#4 /var/www/html/app/Exceptions/Handler.php(46): Laravel\Lumen\Exceptions\Handler->report(Object(Symfony\Component\Debug\Exception\FatalErrorException))
#5 /var/www/html/vend in <b>/var/www/html/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php</b> on line <b>107</b><br />
The new composer version deprecates the --no-suggest
flag, so should be removed from this line.
Also, is a version in the composer.lock
which is locked:
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.
Problem 1
- ocramius/package-versions is locked to version 1.5.1 and an update of this package was not requested.
- ocramius/package-versions 1.5.1 requires composer-plugin-api ^1.0.0 -> found composer-plugin-api[2.0.0] but it does not match the constraint.
ocramius/package-versions only provides support for Composer 2 in 1.8+, which requires PHP 7.4.
If you can not upgrade PHP you can require composer/package-versions-deprecated to resolve this with PHP 7.0+.
You are using Composer 2, which some of your plugins seem to be incompatible with. Make sure you update your plugins or report a plugin-issue to ask them to support Composer 2.
... which causes the build to fail.
I'm unsure if this is the right solution, but running composer require composer/package-versions-deprecated
beforehand makes that run fine. Do you have any thoughts here @irfan-dahir ?
I have the corresponding changes on my fork (with some others); I'm unable to test this directly because of a some apache error on machine (says I have to set a 'Server Name'), I just run this with php -S
: https://github.com/seanbreckenridge/jikan-rest-docker/blob/master/Dockerfile#L15-L17
Would also recommend adding the composer update jikan-me/jikan
after the composer install
.
Often when there are breaking parser (jikan-me/jikan
) changes the pinned parser version in the jikan-me/jikan-rest
package doesn't updated for a few hours/till the next major change/version bump, so it requires the user to run composer update jikan-me/jikan
manually. Having to exec bash
into the image and running the command is quite annoying, Adding that to the docker build process means anyone using this can rebuild the image and that updates the jikan parser version.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.