App reviews, troubleshooting, and recommendations
Hi! I'm new here and want to create an application for shopify. I use docker and php (laravel) template. When I run "yarn dev" inside my php container I get link for log in, I copy the link and log in. But after I am redirected to this url: http://127.0.0.1:3456/?code..... and I get "site can't be reached" error
my docker-compose file:
version: '3'
services:
web-server-shopify:
build:
dockerfile: nginx.Dockerfile
context: ./docker/nginx
restart: always
container_name: web-server-shopify
image: nginx:1.20
ports:
- '80:80'
- '8080:8080'
- '9292:9292'
- '3456:3456'
volumes:
- ./source:/app
- ./docker/nginx/conf.d:/etc/nginx/conf.d
depends_on:
- php-shopify
php-shopify:
container_name: php-shopify
build:
dockerfile: ./docker/php8.1/php.Dockerfile
context: .
volumes:
- "./source:/app"
- ./docker/php8.1/php.ini:/usr/local/etc/php/conf.d/php.ini
- ~/.ssh:/root/.ssh
depends_on:
- mysql-server-shopify
mysql-server-shopify:
container_name: mysql-server-shopify
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: [USER_HERE]
MYSQL_PASSWORD: [USER_PASS_HERE]
MYSQL_DATABASE: shopify
command:
- "mysqld"
- "--local_infile=true"
ports:
- "3332:3306"
phpmyadmin-shopify:
container_name: phpmyadmin-shopify
image: phpmyadmin/phpmyadmin:5.0.1
restart: always
environment:
PMA_HOST: mysql-server-shopify
PMA_USER: root
PMA_PASSWORD: root
UPLOAD_LIMIT: 50M
ports:
- "5024:80"
depends_on:
- mysql-server-shopify
here is my php.Dockerfile
FROM php:8.1-fpm
# Set the working directory inside the container
WORKDIR /app
# Install Shopify CLI dependencies
RUN apt-get update && apt-get install -y \
wget \
curl \
gcc \
g++ \
make \
build-essential \
zlib1g-dev \
libssl-dev \
libreadline-dev \
libyaml-dev \
libsqlite3-dev \
sqlite3 \
libxml2-dev \
libxslt1-dev \
libcurl4-openssl-dev \
libffi-dev \
autoconf \
libncurses5-dev \
bison \
libgdbm-dev \
git \
lsof \
socat \
software-properties-common \
default-libmysqlclient-dev \
libpq-dev \
unzip \
imagemagick \
sudo \
libzip-dev \
&& docker-php-ext-install zip
# InstallX-debug
RUN set -x \
&& pecl install -f xdebug-3.0.0 \
&& docker-php-ext-enable xdebug
#Install PDO (need for composer laravel)
RUN docker-php-ext-install pdo pdo_mysql
# install nodejs
RUN curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
RUN apt install nodejs
# install yarn
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
RUN apt-get update && apt-get install yarn --yes
# install composer
RUN curl -sS https://getcomposer.org/installer | \
php -- --install-dir=/usr/local/bin --filename=composer
RUN mkdir -p /home/appuser/.config/shopify && chmod -R 777 /home/appuser/.config/shopify
# Expose port 9000 and start php-fpm server
EXPOSE 9000
CMD ["php-fpm"]
my conf file:
server {
listen 80;
index index.php index.html;
error_log /var/log/nginx/error.log;
access_log /var/log/nginx/access.log;
root /app/advox-app/web/public; #advox-app is your application name
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php-shopify:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
gzip_static on;
}
}
also, when open http://localhost I get error:
TypeError
Shopify\Utils::sanitizeShopDomain(): Argument #1 ($shop) must be of type string, null given, called in /app/advox-app/web/app/Lib/AuthRedirection.php on line 17
But seems like this error connects to "yarn dev" command. Please, help me. Thanks!
Solved! Go to the solution
This is an accepted solution.
Well, if smb face this issue, you can resolve like that:
log in you account, after when you are redirected to this url - http://127.0.0.1:3456/?[URL_PARAMS_HERE]
Just do this:
1 - expose 3456 port for php container instead of webserver
2 - log in shopify partner, when you are redirected to this "http://127.0.0.1:3456/?[URL_PARAMS_HERE] just do this:
2.1 - open a new tab in your terminal, go to php container again. go to your project dir and run:
wget 'http://127.0.0.1:3456/?code=[CODE]&state=[STATE]' - don't forget to use quotes!
2.2 - open your first terminal tab and your command will proceed working.
This is an accepted solution.
Well, if smb face this issue, you can resolve like that:
log in you account, after when you are redirected to this url - http://127.0.0.1:3456/?[URL_PARAMS_HERE]
Just do this:
1 - expose 3456 port for php container instead of webserver
2 - log in shopify partner, when you are redirected to this "http://127.0.0.1:3456/?[URL_PARAMS_HERE] just do this:
2.1 - open a new tab in your terminal, go to php container again. go to your project dir and run:
wget 'http://127.0.0.1:3456/?code=[CODE]&state=[STATE]' - don't forget to use quotes!
2.2 - open your first terminal tab and your command will proceed working.
Hey Community 👋 Did you know that March 15th is National Everything You Think Is W...
By JasonH Apr 1, 2025Discover how to increase the efficiency of commerce operations with Shopify Academy's l...
By Jacqui Mar 26, 2025Shopify and our financial partners regularly review and update verification requiremen...
By Jacqui Mar 14, 2025