Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Docker install instructions? #40

Open
dessalines opened this issue Aug 31, 2019 · 16 comments
Open

Docker install instructions? #40

dessalines opened this issue Aug 31, 2019 · 16 comments

Comments

@dessalines
Copy link

Neither prod nor dev docker install instructions are on the docs website, or here.

@dessalines
Copy link
Author

Also with the default docker-compose file, after adding a .env, I get the error:

Building app
ERROR: Cannot locate specified Dockerfile: Dockerfile

@dessalines
Copy link
Author

dessalines commented Aug 31, 2019

You might need to add something like:

    build: 
      context: contrib
      dockerfile: contrib/Dockerfile

@dansup
Copy link
Member

dansup commented Sep 1, 2019

@dessalines The dockerfile was contributed by someone, I have not tested it yet.

@dessalines
Copy link
Author

I got it to build from scratch in docker by adding lines similar to those above, and it loaded the main pixelfed page, but gave a message about site errors.

@shleeable
Copy link

shleeable commented Sep 4, 2019

There are a few people (including myself) who fixed the docker a while ago... but I'm waiting for a stable before I start investigating again

@ahstro
Copy link

ahstro commented Oct 1, 2019

Changing docker-compose.yml like this and running docker-compose up, I'm able to access a botched landing page saying "Something went wrong" twice [fig. 1]. If I click "Register" (or anything that redirects me to the HTTPS version of the site), I'm greeted by an error code saying SSL_ERROR_RX_RECORD_TOO_LONG [fig. 2]). This is as far as I've been able to get with my very limited knowledge of Docker, system administrations, and all that jazz. I think maybe what I need to do is generate SSL certificates and put them somewhere, but I'm too tired to spend any more time trying to do that now. If anyone else knows what to do, please fill us in 😊

Fig. 1:
pixelfed-8080

Fig. 2:
pixelfed-https

@Strubbl
Copy link
Contributor

Strubbl commented Nov 1, 2019

@ahstro i had the same error like in [fig. 1]. My fault was, that the APP_KEY variable in .env file was not set to 32 char random string. I had 33 chars. 🤦‍♂️

@albjeremias
Copy link

albjeremias commented Jan 20, 2020

$ docker-compose up 
Building app
ERROR: Cannot locate specified Dockerfile: Dockerfile

😭

fix:

      context: contrib/docker 
      dockerfile: ./Dockerfile.fpm

💘

@albjeremias
Copy link

When i open the registration.. in debug i get this message:

(1/1)                                     InvalidArgumentException                                                                  Action Facade\Ignition\Http\Controllers\ExecuteSolutionController not defined.
--
in UrlGenerator.php line 453
at UrlGenerator->action('Facade\\Ignition\\Http\\Controllers\\ExecuteSolutionController', array(), true)in helpers.php line 103
at action('\\Facade\\Ignition\\Http\\Controllers\\ExecuteSolutionController')in SolutionTransformer.php line 32
at SolutionTransformer->toArray()in ErrorPageViewModel.php line 106
at ErrorPageViewModel->solutions()in ErrorPageViewModel.php line 177
at ErrorPageViewModel->toArray()in ErrorPageHandler.php line 73
at ErrorPageHandler->renderException(object(ErrorPageViewModel))in ErrorPageHandler.php line 52
at ErrorPageHandler->handle(object(QueryException))in IgnitionWhoopsHandler.php line 25
at IgnitionWhoopsHandler->handle(object(QueryException))in Run.php line 321
at Run->handleException(object(QueryException))in Handler.php line 360
at Handler->renderExceptionWithWhoops(object(QueryException))in Handler.php line 339
at Handler->renderExceptionContent(object(QueryException))in Handler.php line 323
at Handler->convertExceptionToResponse(object(QueryException))in Handler.php line 302
at Handler->prepareResponse(object(Request), object(QueryException))in Handler.php line 207
at Handler->render(object(Request), object(QueryException))in Handler.php line 51
at Handler->render(object(Request), object(QueryException))in Pipeline.php line 51
at Pipeline->handleException(object(Request), object(QueryException))in Pipeline.php line 132
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in RedirectIfAuthenticated.php line 25
at RedirectIfAuthenticated->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in Localization.php line 21
at Localization->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in TwoFactorAuth.php line 33
at TwoFactorAuth->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in EmailVerificationCheck.php line 33
at EmailVerificationCheck->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in SubstituteBindings.php line 41
at SubstituteBindings->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in VerifyCsrfToken.php line 76
at VerifyCsrfToken->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in ShareErrorsFromSession.php line 49
at ShareErrorsFromSession->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in StartSession.php line 56
at StartSession->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in AddQueuedCookiesToResponse.php line 37
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in FrameGuard.php line 18
at FrameGuard->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in EncryptCookies.php line 66
at EncryptCookies->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in Pipeline.php line 105
at Pipeline->then(object(Closure))in Router.php line 683
at Router->runRouteWithinStack(object(Route), object(Request))in Router.php line 658
at Router->runRoute(object(Request), object(Route))in Router.php line 624
at Router->dispatchToRoute(object(Request))in Router.php line 613
at Router->dispatch(object(Request))in Kernel.php line 177
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))in Pipeline.php line 130
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in InjectDebugbar.php line 58
at InjectDebugbar->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in TrustProxies.php line 57
at TrustProxies->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in TransformsRequest.php line 21
at TransformsRequest->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in TransformsRequest.php line 21
at TransformsRequest->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in ValidatePostSize.php line 27
at ValidatePostSize->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in CheckForMaintenanceMode.php line 62
at CheckForMaintenanceMode->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in HandlePreflight.php line 29
at HandlePreflight->handle(object(Request), object(Closure))in Pipeline.php line 171
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))in Pipeline.php line 105
at Pipeline->then(object(Closure))in Kernel.php line 152
at Kernel->sendRequestThroughRouter(object(Request))in Kernel.php line 117
at Kernel->handle(object(Request))in index.php line 53

&
pixelfed/pixelfed#1949

@trwnh trwnh transferred this issue from pixelfed/pixelfed Jan 26, 2020
@carstencodes
Copy link

After some struggling, I finally made the contributed Docker-Images run.

Using the fpm Dockerfile, a resulting image file using 1.39 GiB memory is used. From my point of view, this can be optimizied, since layers can be combined etc.

For official images, like proposed in #19 , this would be far to much.

If you like to, I could give it a try within the next weeks.

@tomash
Copy link

tomash commented Jul 15, 2020

@carstencodes I'd be very interested in official docker images and instructions on deploying using these images.

@tomash
Copy link

tomash commented Jul 15, 2020

As for now when I try to docker-compose up, it fails on the main dockerfile around line 61:

Step 15/37 : RUN docker-php-ext-install "-j$(nproc) gd"
 ---> Running in 9366e3e64580
usage: /usr/local/bin/docker-php-ext-install [-jN] [--ini-name file.ini] ext-name [ext-name ...]
   ie: /usr/local/bin/docker-php-ext-install gd mysqli
       /usr/local/bin/docker-php-ext-install pdo pdo_mysql
       /usr/local/bin/docker-php-ext-install -j5 gd mbstring mysqli pdo pdo_mysql shmop

if custom ./configure arguments are necessary, see docker-php-ext-configure

Possible values for ext-name:
bcmath bz2 calendar ctype curl dba dom enchant exif ffi fileinfo filter ftp gd gettext gmp hash iconv imap intl json ldap mbstring mysqli oci8 odbc opcache pcntl pdo pdo_dblib pdo_firebird pdo_mysql pdo_oci pdo_odbc pdo_pgsql pdo_sqlite pgsql phar posix pspell readline reflection session shmop simplexml snmp soap sockets sodium spl standard sysvmsg sysvsem sysvshm tidy tokenizer xml xmlreader xmlrpc xmlwriter xsl zend_test zip

Some of the above modules are already compiled into PHP; please check
the output of "php -i" to see which modules are already loaded.
ERROR: Service 'worker' failed to build: The command '/bin/sh -c docker-php-ext-install "-j$(nproc) gd"' returned a non-zero code: 1

@OnSive
Copy link

OnSive commented May 11, 2021

Are there any updates on a (semi-)official docker image?

@runxc1
Copy link

runxc1 commented Dec 23, 2021

Looking at the instructions and steps and required services really there needs to be an official docker image for this.

@edm00se
Copy link

edm00se commented Dec 23, 2021

Looking at the instructions and steps and required services really there needs to be an official docker image for this.

Preferably a recommended docker-compose.yml as well.

@M-D-M
Copy link

M-D-M commented Dec 4, 2022

Opening this back up for anyone who finds this from Google. The docker images are booting now, and with a few other manual steps (the "one-time setup tasks"), Pixelfed is mostly coming up now.

Here is the PR: pixelfed/pixelfed#3850)

(Oddly enough, I'm still getting the "SSL_ERROR_RX_RECORD_TOO_LONG" error when trying to register, which is how I ended up here!)

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

No branches or pull requests