# Shinetech Docker CLI
[![PyPI version][pypi_badge]][pypi_link]
Shinetech Docker CLI is a more intelligent, user-friendly and advanced configurable local development environment built with Docker.
- [Getting Started](#getting-started)
- [Use Cases](#use-cases)
* [Run docker command](#run-docker-command)
* [Run docker-compose command](#run-docker-compose-command)
* [Run docker exec command](#run-docker-exec-command)
* [Log in to the specified server using SSH](#log-in-to-the-specified-server-using-ssh)
* [Launch docker services](#launch-docker-services)
* [Stop docker services](#stop-docker-services)
* [Restart specified docker service](#restart-specified-docker-service)
* [Configure local environment](#configure-local-environment)
* [Build local development environment with your configuration](#build-local-development-environment-with-your-configuration)
* [Export and import database](#export-and-import-database)
* [Export database](#export-database)
* [Import database](#import-database)
* [Show the local environment and workspace information](#show-the-local-environment-and-workspace-information)
* [List all environments](#list-all-environments)
* [Initial workspace](#initial-workspace)
* [Create and setup project](#create-and-setup-project)
* [Create a new PHP project based on a base template or framework skeleton](#create-a-new-php-project-based-on-a-base-template-or-framework-skeleton)
* [Create a new Magento project based on the source code or composer](#create-a-new-magento-project-based-on-the-source-code-or-composer)
* [Create a new Javascript project based on a base template or framework skeleton](#create-a-new-javascript-project-based-on-a-base-template-or-framework-skeleton)
* [Build an existing project based on existing code and database](#build-an-existing-project-based-on-existing-code-and-database)
* [Upgrade Shinetech Docker](#upgrade-shinetech-docker)
* [Switch network mode for a container](#switch-network-mode-for-a-container)
* [Edit or show configuration of docker-compose.yml](#edit-or-show-configuration-of-docker-compose-yml)
* [Show or live tail docker container logs](#show-or-live-tail-docker-container-logs)
* [Install or upgrade docker compose](#install-or-upgrade-docker-compose)
## Getting Started
```shell
sudo pip3 install stdocker
```
If you get error `ERROR: Could not find a version that satisfies the requirement`, please use the following command to install:
```shell
python3 -m pip install stdocker==1.2.8
```
It based on the internal docker project `Shinetech Docker`, please install it first. If you do not have permission to use Shinetech Docker, please ignore this package.
After the installation is successful, you can run the `stdocker` command in any directory and perform the operations you need.
## Use Cases
Run the following command to view the command help.
```shell
stdocker
```
or
```shell
stdocker --help
```
You can see the following information:
```
Usage: stdocker [OPTIONS] COMMAND [ARGS]...
Shinetech Docker CLI
Options:
-d, --working-dir PATH Location of the installation directory, defaults to
/opt/shinetech/stdocker.
--version Show the version and exit.
--help Show this message and exit.
Commands:
about Show the local environment and workspace...
bash Bash session for running container
build Build local development environment with your...
configure Configure local environment, will guide you...
create-js-project Create a new Javascript project based on a base...
create-magento-project Create a new Magento project based on the...
create-php-project Create a new PHP project based on a base...
database-export Export database to SQL file
database-import Import database from SQL file
docker-compose Execute sudo docker-compose * command
docker-exec Execute sudo docker exec * command
docker-run Execute sudo docker * command
editor Edit or show configuration of docker-compose.yml
envs List all environments
logs Show or live tail docker container logs
restart Restarts all stopped and running services, or...
setup-docker-compose Install or upgrade docker compose
setup-project Build a existing project based on existing code...
start Launch docker services
status List all running containers
stop Stop docker services
switch-network Switch network mode for a container
upgrade Upgrade Shinetech Docker
workspace Initial workspace
```
For the detailed usage of each command, you can use the following command to view:
```shell
stdocker [COMMAND] --help
```
e.g:
```shell
stdocker create-project --help
```
### Run docker command
If you want to run `sudo docker *` command, you can use our command like this:
```shell
stdocker docker-run <DOCKER_COMMAND>
```
You can check `sudo docker` and see which original command we supported. Please use double quotes if `DOCKER_COMMAND` contains spaces or other parameters.
e.g:
```shell
stdocker docker-run info
```
This command is equivalent to:
```shell
sudo docker info
```
### Run docker-compose command
If you want to run `sudo docker-compose *` command, you can use our command like this:
```shell
stdocker docker-compose <DOCKER_COMPOSE_COMMAND>
```
You can check `sudo docker-compose` and see which original command we supported. Please use double quotes if `DOCKER_COMPOSE_COMMAND` contains spaces or other parameters.
e.g:
```shell
stdocker docker-compose ps
```
This command is equivalent to:
```shell
sudo docker-compose ps
```
You will see the following result:
```
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
stdev-elasticsearch-1 stdev-elasticsearch "/bin/tini -- /usr/local/bin/docker-entrypoint.sh eswrapper" elasticsearch 20 minutes ago Up 20 minutes 0.0.0.0:9200->9200/tcp, :::9200->9200/tcp, 9300/tcp
stdev-elasticvue-1 cars10/elasticvue:0.42.1 "nginx -g 'daemon off;'" elasticvue 20 minutes ago Up 20 minutes 80/tcp, 0.0.0.0:8082->8080/tcp, :::8082->8080/tcp
stdev-golang-1 golang:1.20 "tail -F anything" golang 20 minutes ago Up 20 minutes
stdev-mailcatcher-1 stdev-mailcatcher "mailcatcher --smtp-ip=0.0.0.0 --http-ip=0.0.0.0 --foreground" mailcatcher 20 minutes ago Up 20 minutes 1025/tcp, 0.0.0.0:1080->1080/tcp, :::1080->1080/tcp
stdev-memcached-1 memcached "docker-entrypoint.sh memcached" memcached 20 minutes ago Up 20 minutes 0.0.0.0:11211->11211/tcp, :::11211->11211/tcp
stdev-mongo-1 registry.cn-beijing.aliyuncs.com/shinetech/mongo:5.0.5 "docker-entrypoint.sh mongod" mongo 20 minutes ago Up 20 minutes 27017/tcp
stdev-mongoexpress-1 mongo-express "tini -- /docker-entrypoint.sh mongo-express" mongoexpress 20 minutes ago Up 20 minutes 0.0.0.0:8081->8081/tcp, :::8081->8081/tcp
stdev-mysql-1 stdev-mysql "docker-entrypoint.sh mysqld" mysql 20 minutes ago Up 20 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp
stdev-nginx-1 stdev-nginx "/docker-entrypoint.sh /usr/bin/supervisord" nginx 20 minutes ago Up 20 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp, 0.0.0.0:6081->6081/tcp, :::6081->6081/tcp
stdev-pgweb-1 sosedoff/pgweb "/usr/bin/pgweb --bind=0.0.0.0 --listen=8081" pgweb 20 minutes ago Up 20 minutes 0.0.0.0:8083->8081/tcp, :::8083->8081/tcp
stdev-phpfpm-1 stdev-phpfpm "/docker-entrypoint.sh php-fpm" phpfpm 20 minutes ago Up 20 minutes 9000/tcp
stdev-phpmyadmin-1 phpmyadmin:latest "/docker-entrypoint.sh apache2-foreground" phpmyadmin 20 minutes ago Up 20 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp, 0.0.0.0:8443->443/tcp, :::8443->443/tcp
stdev-phpredisadmin-1 erikdubbelboer/phpredisadmin:latest "tini -- php -S 0.0.0.0:80" phpredisadmin 20 minutes ago Up 20 minutes 0.0.0.0:8089->80/tcp, :::8089->80/tcp
stdev-postgres-1 postgres "docker-entrypoint.sh postgres" postgres 20 minutes ago Up 20 minutes 5432/tcp
stdev-python-1 python:3.9 "tail -F anything" python 20 minutes ago Up 20 minutes
stdev-rabbitmq-1 rabbitmq:3.9-management "docker-entrypoint.sh rabbitmq-server" rabbitmq 20 minutes ago Up 20 minutes 4369/tcp, 5671-5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp
stdev-redis-1 redis:6.2.6 "docker-entrypoint.sh redis-server --appendonly no" redis 20 minutes ago Up 20 minutes 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp
stdev-webgrind-1 registry.cn-beijing.aliyuncs.com/shinetech/webgrind:1.9.2 "docker-php-entrypoint apache2-foreground" webgrind 20 minutes ago Up 20 minutes 0.0.0.0:8084->80/tcp, :::8084->80/tcp
```
**NOTE:**
You can also use `stdocker status` list all running docker containers.
### Run docker exec command
If you want to run `sudo docker exec *` command, you can use our command like this:
```shell
stdocker docker-exec <COMMAND>
```
You can check `sudo docker exec --help` and see which original command we supported. Please use double quotes if `COMMAND` contains spaces or other parameters.
e.g:
```shell
stdocker docker-exec "-it stdev-phpfpm-1 /bin/bash"
```
This command is equivalent to:
```shell
sudo docker exec -it stdev-phpfpm-1 /bin/bash
```
### Log in to the specified server using SSH
```shell
stdocker bash <SERVICE>
```
e.g:
```shell
stdocker bash phpfpm
stdocker bash mysql
```
Or, Bash commands are compatible with container name and service:
```shell
stdocker bash stdev-phpfpm-1
stdocker bash stdev-mysql-1
```
This command is equivalent to:
```shell
sudo docker exec -it stdev-phpfpm-1 /bin/bash
sudo docker exec -it stdev-mysql-1 /bin/bash
```
### Launch docker services
It will stop local services and launch the docker services
```shell
stdocker start
```
### Stop docker services
It will stop the docker services and launch local services
```shell
stdocker stop
```
### Restart specified docker service
```shell
stdocker restart <SERVICE>
```
e.g:
```shell
stdocker restart # Restart all services
stdocker restart nginx
stdocker restart phpfpm
```
### Configure local environment
It will guide you through creating your .env and docker-compose.yml
```shell
stdocker configure
```
### Build local development environment with your configuration
Switch and build your development environment using the following command:
```shell
stdocker build <ENV>
```
If `ENV` is empty, it will guide you to create your customized configuration, otherwise will base on your specified env to build services.
```shell
stdocker build
stdocker build --env=magento_246
```
### Export and import database
#### Export database:
Default to export MySQL database:
```shell
stdocker database-export --database-name=test
```
If you want to export other database, you can specify the database type and version:
```shell
stdocker database-export --database-name=test --database-type=mariadb --database-version=10.5
```
#### Import database:
Default to export MySQL database:
```shell
stdocker database-import --database-name=test --backup-sql-file=test_20220823.sql
```
If you want to import other database, you can specify the database type and version:
```shell
stdocker database-import --database-name=test --backup-sql-file=test_20220823.sql --database-type=mariadb --database-version=10.5
```
### Show the local environment and workspace information
```shell
stdocker about
```
You can see the following information:
```
Current environment:
- lamp
Your workspace information:
- Workspace: /home/sunfeng/stdocker
- Project Directory: /home/sunfeng/stdocker/app
- Nginx VHosts: /home/sunfeng/stdocker/config/services/nginx/sites-enabled
- Nginx Log: /home/sunfeng/stdocker/var/logs/nginx
- Apache VHosts: /home/sunfeng/stdocker/config/services/apache/sites-enabled
- Apache Log: /home/sunfeng/stdocker/var/logs/apache2
- SSL CA: /home/sunfeng/stdocker/config/services/ca
- php.ini: /home/sunfeng/stdocker/config/services/php/php.ini
- Composer auth.json: /home/sunfeng/stdocker/config/services/composer/auth.json
- MySQL Log: /home/sunfeng/stdocker/var/logs/mysql
```
### List all environments
```shell
stdocker envs
```
You can see the following information:
```
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| | Env Code | Web Server | PHP | MySQL | MariaDB | phpMyAdmin | Elasticsearch | Elasticvue | Redis | phpRedisAdmin | RabbitMQ | Mailcatcher | MongoDB | Mongo Express | PostgreSQL | Pgweb |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| Basic LNMP | basic | nginx | 7.4 | 8.0 | N | Y | N | N | N | N | N | N | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| Full LNMP | full | nginx | 7.4 | 8.0 | N | Y | 7.16 | Y | 6.2 | Y | 3.9 | Y | Y | Y | Y | Y |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| LAMP | lamp | apache | 7.4 | 8.0 | N | Y | 7.16 | N | 6.2 | N | 3.9 | Y | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| LNMP | lnmp | nginx | 7.4 | 8.0 | N | Y | 7.16 | N | 6.2 | N | 3.9 | Y | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| Magento 2.3 | magento_23 | nginx | 7.3 | 5.7 | N | Y | 7.6 | Y | 5.0 | Y | 3.8 | Y | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| Magento 2.4 | magento_24 | nginx | 7.4 | 8.0 | N | Y | 7.16 | Y | 6.2 | Y | 3.8 | Y | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| Magento 2.4.4 | magento_244 | nginx | 7.4 | 8.0 | N | Y | 7.16 | Y | 6.2 | Y | 3.9 | Y | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
| Magento 2.4.5 | magento_245 | nginx | 8.1 | 8.0 | N | Y | 7.17 | Y | 6.2 | Y | 3.9 | Y | N | N | N | N |
+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+
```
The highlight row is your current environment, you can use `Env Code` for `stdocker build --env=<ENV>` command.
### Initial workspace
It will initial your workspace to your home or specified directory, and update env config.
```shell
stdocker workspace
```
### Create and setup project
#### Create a new PHP project based on a base template or framework skeleton
```shell
stdocker create-php-project [OPTIONS]
```
Create a Magento 2 project:
```shell
stdocker create-php-project --platform=magento --project-name=m2project --target-version=2.4.5
```
e.g:
Create a Symfony project:
```shell
stdocker create-php-project --platform=symfony --project-name=sfproject
```
#### Create a new Magento project based on the source code or composer
Please download the Magento source code from the official website first if use source code to create project.
```shell
stdocker create-magento-project [OPTIONS]
```
e.g:
Create a Magento 2.4.5 project with source code:
```shell
stdocker create-magento-project --version-number=2.4.5 --source-code-file=/home/sunfeng/Downloads/adobe-commerce-2.4.5-2022-07-21-08-24-23.zip
```
Create a Magento 2.4.5 project with custom project name:
```shell
stdocker create-magento-project --version-number=2.4.5 --source-code-file=/home/sunfeng/Downloads/adobe-commerce-2.4.5-2022-07-21-08-24-23.zip --project-name=testproject
```
Create a Magento 2.4.5 project with composer:
```shell
stdocker create-magento-project --version-number=2.4.5
```
Also, we can specify `Adobe Commerce` and `Magento Open Source` via `--version`:
- `enterprise`: Adobe Commerce
- `community`: Magento Open Source
Create a Magento 2.4.5 project using Adobe Commerce with composer:
```shell
stdocker create-magento-project --version=enterprise --version-number=2.4.5
```
Create a Magento 2.4.5 project using Magento Open Source with composer:
```shell
stdocker create-magento-project --version=community --version-number=2.4.5
```
#### Create a new Javascript project based on a base template or framework skeleton
```shell
stdocker create-js-project [OPTIONS]
```
e.g:
Create a React project:
```shell
stdocker create-js-project --platform=react --project-name=reactproject
```
#### Build an existing project based on existing code and database
```shell
stdocker setup-project [OPTIONS]
```
Setup HP project:
```shell
stdocker setup-project --project-name=hp --db-sql-file=/home/sunfeng/Downloads/20220824201501.sql --country=id
```
### Upgrade Shinetech Docker
```shell
stdocker upgrade
```
Upgrade to the specified version:
```shell
stdocker upgrade --target_version=1.0.1
```
If you want to restart docker services after upgrade, please use the following command:
```shell
stdocker upgrade --force
```
### Switch network mode for a container
```shell
stdocker switch-network [OPTIONS] SERVICE
```
```shell
stdocker switch-network phpfpm --network-mode=host
stdocker switch-network phpfpm --network-mode=bridge
```
### Edit or show configuration of docker-compose.yml
```shell
stdocker editor [OPTIONS]
```
Show the configuration in terminal:
```shell
stdocker editor
```
Edit the configuration via vim:
```shell
stdocker editor --edit-mode
```
### Show or live tail docker container logs
```shell
stdocker logs [OPTIONS] SERVICE
```
Show all logs for specified container
```shell
stdocker logs phpfpm
```
Tail logs for specified container
```shell
stdocker logs phpfpm --follow
```
### Install or upgrade docker compose
```shell
stdocker setup-docker-compose [OPTIONS] [VERSION]
```
Install or upgrade to default version:
```shell
stdocker setup-docker-compose
```
Install or upgrade to default version:
```shell
stdocker setup-docker-compose 1.29.2
stdocker setup-docker-compose v2.19.1
```
**NOTE:** Find the newest version from https://github.com/docker/compose/releases
- v1: https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64
- v2: https://github.com/docker/compose/releases/download/v2.19.1/docker-compose-linux-x86_64
[pypi_badge]: https://badge.fury.io/py/stdocker.svg
[pypi_link]: http://badge.fury.io/py/stdocker
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this
project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.2.8] - 2024-01-11
### Added
- Add Stirling PDF, Dynamodb and Dynamodb Admin to env list
- Add WooCommerce to PHP platforms
## [1.2.7] - 2024-01-05
### Fixed
- Fix restart container bugs
- Fix HTTPError: 400 Bad Request error for twine upload
## [1.2.6] - 2023-12-25
### Added
- Add ThinkPHP to PHP platforms
- Add SonarQube to env list
## [1.2.5] - 2023-11-17
### Added
- Set dynamic max width according to columns of terminal size for env list
## [1.2.4] - 2023-11-16
### Added
- Add MSSQL to env list
## [1.2.3] - 2023-11-15
### Fixed
- Fix database export bug
- Fix local install package bug
- Fix selected multiple version display issue for env list
## [1.2.2] - 2023-11-14
### Added
- Split database import and export to independent commands
- Change default env build to Magento 2.4.6
- Convert multiple service version list to string for env list
### Fixed
- Fix database version issue for create Magento project
## [1.2.1] - 2023-11-13
### Fixed
- Fix database version issues
## [1.2.0] - 2023-11-13
### Fixed
- Fix package issues for publish and debug
## [1.1.9] - 2023-11-13
### Added
- Add database type and version for database import and export
- Add database type and version for create Magento project
## [1.1.8] - 2023-10-31
### Added
- Add OpenSearch to env list
## [1.1.7] - 2023-10-27
### Added
- Add C++ and Rust to env list
- Add bash commands are compatible with container name and service name
## [1.1.6] - 2023-10-26
### Added
- Add .Net Core, Java and Ruby to env list
## [1.1.5] - 2023-10-23
### Added
- Add Node to env list
## [1.1.4] - 2023-10-10
### Added
- Upgrade docker compose to v2
- Fix docker container name with -, and _ only support for docker compose v1
## [1.1.3] - 2023-10-09
### Added
- Add Python and Golang to env list
### Fixed
- Fixed the problem of multiple decimal places with 0 at the end and the last 0 being ignored. See [https://github.com/pri22296/beautifultable/issues/136](https://github.com/pri22296/beautifultable/issues/136)
## [1.1.2] - 2023-09-06
### Added
- Add Magento version selection for setup Magento project command
## [1.1.1] - 2023-06-30
### Added
- Fix install or upgrade docker compose command
## [1.1.0] - 2023-06-30
### Added
- Add install or upgrade docker compose command
## [1.0.18] - 2023-05-04
### Fixed
- Fix project name and directory bugs for create Magento project
## [1.0.17] - 2023-01-17
### Added
- Add Magento 2 PWA project creation support
## [1.0.16] - 2023-01-04
### Added
- Add Vue Storefront and NuxtJS project creation support
## [1.0.15] - 2022-12-16
### Added
- Improve start and stop command to support the specified services
## [1.0.14] - 2022-12-15
### Added
- Show or live tail docker container logs
## [1.0.13] - 2022-11-18
### Added
- Add switch docker container network command
- Add edit or show configuration of docker-compose.yml command
- Update command docs
- Build publish script
## [1.0.12] - 2022-11-10
### Added
- Add create js project command
- Rebuild restart command for restarts all stopped and running services
## [1.0.11] - 2022-11-04
### Added
- Add Webgrind to env list
### Fixed
- Fix yes or no display issue for env list
## [1.0.10] - 2022-09-13
### Added
- Add CakePHP, CodeIgniter and Drupal project creation
- Fix bugs and adjust warning message color
## [1.0.9] - 2022-09-09
### Added
- Rebuild create and setup project command
- Update project creation parameters
- Add composer auth.json in about command
- Update use cases
## [1.0.8] - 2022-09-08
### Added
- Adjust platforms for init project command
- Add MariaDB to env table
- Add sort for env table
- Add webserver for create project and magento project
- Add Zend framework to platforms
- Add status command to list all running containers
- Add target version to init magento command and make source code is not required
- Add memcached for env table
## [1.0.7] - 2022-09-01
### Added
- Add list envs command and rebuild env handler code
- Optimize env table and colored current env
## [1.0.6] - 2022-08-31
### Fixed
- Fix version convert bug and optimize init magento command
## [1.0.5] - 2022-08-30
### Added
- Add conformation when project already exists for initial project
- Add initial the Magento project command
## [1.0.4] - 2022-08-29
### Added
- Add force restart docker services for upgrade
- Update use cases documents
- Improve initial project command
## [1.0.3] - 2022-08-26
### Fixed
- Fix bugs
## [1.0.2] - 2022-08-26
### Added
- Add workspace command
- Remove GitHub actions
- Add workspace to init project command
### Fixed
- Fix bug and optimize code
## [1.0.1] - 2022-08-23
### Added
- Improve cli
- Improve documents
### Fixed
- Fix cli bug
## [1.0.0] - 2022-08-22
### Added
- Build Shinetech Docker CLI code architecture
- Implement all functions
### Fixed
- Fix bug: Warning: 'classifiers' should be a list, got type 'tuple'
Raw data
{
"_id": null,
"home_page": "https://github.com/winds1983/stdocker",
"name": "stdocker",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "python package,stdocker,shinetech,docker,development environment",
"author": "Jason Sun",
"author_email": "sunf@shinetechsoftware.com",
"download_url": "https://files.pythonhosted.org/packages/af/a1/45095deeac5cfbf4766340c3b906b316536bd0f3522a49208bed0859d943/stdocker-1.2.8.tar.gz",
"platform": null,
"description": "# Shinetech Docker CLI\n\n[![PyPI version][pypi_badge]][pypi_link]\n\nShinetech Docker CLI is a more intelligent, user-friendly and advanced configurable local development environment built with Docker.\n\n- [Getting Started](#getting-started)\n- [Use Cases](#use-cases)\n * [Run docker command](#run-docker-command)\n * [Run docker-compose command](#run-docker-compose-command)\n * [Run docker exec command](#run-docker-exec-command)\n * [Log in to the specified server using SSH](#log-in-to-the-specified-server-using-ssh)\n * [Launch docker services](#launch-docker-services)\n * [Stop docker services](#stop-docker-services)\n * [Restart specified docker service](#restart-specified-docker-service)\n * [Configure local environment](#configure-local-environment)\n * [Build local development environment with your configuration](#build-local-development-environment-with-your-configuration)\n * [Export and import database](#export-and-import-database)\n * [Export database](#export-database)\n * [Import database](#import-database)\n * [Show the local environment and workspace information](#show-the-local-environment-and-workspace-information)\n * [List all environments](#list-all-environments)\n * [Initial workspace](#initial-workspace)\n * [Create and setup project](#create-and-setup-project)\n * [Create a new PHP project based on a base template or framework skeleton](#create-a-new-php-project-based-on-a-base-template-or-framework-skeleton)\n * [Create a new Magento project based on the source code or composer](#create-a-new-magento-project-based-on-the-source-code-or-composer)\n * [Create a new Javascript project based on a base template or framework skeleton](#create-a-new-javascript-project-based-on-a-base-template-or-framework-skeleton)\n * [Build an existing project based on existing code and database](#build-an-existing-project-based-on-existing-code-and-database)\n * [Upgrade Shinetech Docker](#upgrade-shinetech-docker)\n * [Switch network mode for a container](#switch-network-mode-for-a-container)\n * [Edit or show configuration of docker-compose.yml](#edit-or-show-configuration-of-docker-compose-yml)\n * [Show or live tail docker container logs](#show-or-live-tail-docker-container-logs)\n * [Install or upgrade docker compose](#install-or-upgrade-docker-compose)\n\n## Getting Started\n\n```shell\nsudo pip3 install stdocker\n```\n\nIf you get error `ERROR: Could not find a version that satisfies the requirement`, please use the following command to install:\n```shell\npython3 -m pip install stdocker==1.2.8\n```\n\nIt based on the internal docker project `Shinetech Docker`, please install it first. If you do not have permission to use Shinetech Docker, please ignore this package.\n\nAfter the installation is successful, you can run the `stdocker` command in any directory and perform the operations you need.\n\n## Use Cases\n\nRun the following command to view the command help.\n```shell\nstdocker\n```\nor\n```shell\nstdocker --help\n```\nYou can see the following information:\n```\nUsage: stdocker [OPTIONS] COMMAND [ARGS]...\n\n Shinetech Docker CLI\n\nOptions:\n -d, --working-dir PATH Location of the installation directory, defaults to\n /opt/shinetech/stdocker.\n --version Show the version and exit.\n --help Show this message and exit.\n\nCommands:\n about Show the local environment and workspace...\n bash Bash session for running container\n build Build local development environment with your...\n configure Configure local environment, will guide you...\n create-js-project Create a new Javascript project based on a base...\n create-magento-project Create a new Magento project based on the...\n create-php-project Create a new PHP project based on a base...\n database-export Export database to SQL file\n database-import Import database from SQL file\n docker-compose Execute sudo docker-compose * command\n docker-exec Execute sudo docker exec * command\n docker-run Execute sudo docker * command\n editor Edit or show configuration of docker-compose.yml\n envs List all environments\n logs Show or live tail docker container logs\n restart Restarts all stopped and running services, or...\n setup-docker-compose Install or upgrade docker compose\n setup-project Build a existing project based on existing code...\n start Launch docker services\n status List all running containers\n stop Stop docker services\n switch-network Switch network mode for a container\n upgrade Upgrade Shinetech Docker\n workspace Initial workspace\n```\n\nFor the detailed usage of each command, you can use the following command to view:\n\n```shell\nstdocker [COMMAND] --help\n```\ne.g:\n```shell\nstdocker create-project --help\n```\n\n### Run docker command\n\nIf you want to run `sudo docker *` command, you can use our command like this:\n```shell\nstdocker docker-run <DOCKER_COMMAND>\n```\nYou can check `sudo docker` and see which original command we supported. Please use double quotes if `DOCKER_COMMAND` contains spaces or other parameters.\n\ne.g:\n```shell\nstdocker docker-run info\n```\nThis command is equivalent to:\n```shell\nsudo docker info\n```\n\n### Run docker-compose command\n\nIf you want to run `sudo docker-compose *` command, you can use our command like this:\n```shell\nstdocker docker-compose <DOCKER_COMPOSE_COMMAND>\n```\nYou can check `sudo docker-compose` and see which original command we supported. Please use double quotes if `DOCKER_COMPOSE_COMMAND` contains spaces or other parameters.\n\ne.g:\n```shell\nstdocker docker-compose ps\n```\nThis command is equivalent to:\n```shell\nsudo docker-compose ps\n```\nYou will see the following result:\n```\nNAME IMAGE COMMAND SERVICE CREATED STATUS PORTS\nstdev-elasticsearch-1 stdev-elasticsearch \"/bin/tini -- /usr/local/bin/docker-entrypoint.sh eswrapper\" elasticsearch 20 minutes ago Up 20 minutes 0.0.0.0:9200->9200/tcp, :::9200->9200/tcp, 9300/tcp\nstdev-elasticvue-1 cars10/elasticvue:0.42.1 \"nginx -g 'daemon off;'\" elasticvue 20 minutes ago Up 20 minutes 80/tcp, 0.0.0.0:8082->8080/tcp, :::8082->8080/tcp\nstdev-golang-1 golang:1.20 \"tail -F anything\" golang 20 minutes ago Up 20 minutes \nstdev-mailcatcher-1 stdev-mailcatcher \"mailcatcher --smtp-ip=0.0.0.0 --http-ip=0.0.0.0 --foreground\" mailcatcher 20 minutes ago Up 20 minutes 1025/tcp, 0.0.0.0:1080->1080/tcp, :::1080->1080/tcp\nstdev-memcached-1 memcached \"docker-entrypoint.sh memcached\" memcached 20 minutes ago Up 20 minutes 0.0.0.0:11211->11211/tcp, :::11211->11211/tcp\nstdev-mongo-1 registry.cn-beijing.aliyuncs.com/shinetech/mongo:5.0.5 \"docker-entrypoint.sh mongod\" mongo 20 minutes ago Up 20 minutes 27017/tcp\nstdev-mongoexpress-1 mongo-express \"tini -- /docker-entrypoint.sh mongo-express\" mongoexpress 20 minutes ago Up 20 minutes 0.0.0.0:8081->8081/tcp, :::8081->8081/tcp\nstdev-mysql-1 stdev-mysql \"docker-entrypoint.sh mysqld\" mysql 20 minutes ago Up 20 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp\nstdev-nginx-1 stdev-nginx \"/docker-entrypoint.sh /usr/bin/supervisord\" nginx 20 minutes ago Up 20 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp, 0.0.0.0:6081->6081/tcp, :::6081->6081/tcp\nstdev-pgweb-1 sosedoff/pgweb \"/usr/bin/pgweb --bind=0.0.0.0 --listen=8081\" pgweb 20 minutes ago Up 20 minutes 0.0.0.0:8083->8081/tcp, :::8083->8081/tcp\nstdev-phpfpm-1 stdev-phpfpm \"/docker-entrypoint.sh php-fpm\" phpfpm 20 minutes ago Up 20 minutes 9000/tcp\nstdev-phpmyadmin-1 phpmyadmin:latest \"/docker-entrypoint.sh apache2-foreground\" phpmyadmin 20 minutes ago Up 20 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp, 0.0.0.0:8443->443/tcp, :::8443->443/tcp\nstdev-phpredisadmin-1 erikdubbelboer/phpredisadmin:latest \"tini -- php -S 0.0.0.0:80\" phpredisadmin 20 minutes ago Up 20 minutes 0.0.0.0:8089->80/tcp, :::8089->80/tcp\nstdev-postgres-1 postgres \"docker-entrypoint.sh postgres\" postgres 20 minutes ago Up 20 minutes 5432/tcp\nstdev-python-1 python:3.9 \"tail -F anything\" python 20 minutes ago Up 20 minutes \nstdev-rabbitmq-1 rabbitmq:3.9-management \"docker-entrypoint.sh rabbitmq-server\" rabbitmq 20 minutes ago Up 20 minutes 4369/tcp, 5671-5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp\nstdev-redis-1 redis:6.2.6 \"docker-entrypoint.sh redis-server --appendonly no\" redis 20 minutes ago Up 20 minutes 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp\nstdev-webgrind-1 registry.cn-beijing.aliyuncs.com/shinetech/webgrind:1.9.2 \"docker-php-entrypoint apache2-foreground\" webgrind 20 minutes ago Up 20 minutes 0.0.0.0:8084->80/tcp, :::8084->80/tcp\n```\n\n**NOTE:**\nYou can also use `stdocker status` list all running docker containers.\n\n### Run docker exec command\n\nIf you want to run `sudo docker exec *` command, you can use our command like this:\n```shell\nstdocker docker-exec <COMMAND>\n```\nYou can check `sudo docker exec --help` and see which original command we supported. Please use double quotes if `COMMAND` contains spaces or other parameters.\n\ne.g:\n```shell\nstdocker docker-exec \"-it stdev-phpfpm-1 /bin/bash\"\n```\nThis command is equivalent to:\n```shell\nsudo docker exec -it stdev-phpfpm-1 /bin/bash\n```\n\n### Log in to the specified server using SSH\n\n```shell\nstdocker bash <SERVICE>\n```\n\ne.g:\n```shell\nstdocker bash phpfpm\nstdocker bash mysql\n```\nOr, Bash commands are compatible with container name and service:\n```shell\nstdocker bash stdev-phpfpm-1\nstdocker bash stdev-mysql-1\n```\n\nThis command is equivalent to:\n```shell\nsudo docker exec -it stdev-phpfpm-1 /bin/bash\nsudo docker exec -it stdev-mysql-1 /bin/bash\n```\n\n### Launch docker services\n\nIt will stop local services and launch the docker services\n\n```shell\nstdocker start\n```\n\n### Stop docker services\n\nIt will stop the docker services and launch local services\n\n```shell\nstdocker stop\n```\n\n### Restart specified docker service\n\n```shell\nstdocker restart <SERVICE>\n```\n\ne.g:\n```shell\nstdocker restart # Restart all services\nstdocker restart nginx\nstdocker restart phpfpm\n```\n\n### Configure local environment\n\nIt will guide you through creating your .env and docker-compose.yml\n\n```shell\nstdocker configure\n```\n\n### Build local development environment with your configuration\n\nSwitch and build your development environment using the following command:\n```shell\nstdocker build <ENV>\n```\n\nIf `ENV` is empty, it will guide you to create your customized configuration, otherwise will base on your specified env to build services.\n\n```shell\nstdocker build\nstdocker build --env=magento_246\n```\n\n### Export and import database\n\n#### Export database:\n\nDefault to export MySQL database:\n```shell\nstdocker database-export --database-name=test\n```\nIf you want to export other database, you can specify the database type and version:\n```shell\nstdocker database-export --database-name=test --database-type=mariadb --database-version=10.5\n```\n\n#### Import database:\n\nDefault to export MySQL database:\n```shell\nstdocker database-import --database-name=test --backup-sql-file=test_20220823.sql\n```\n\nIf you want to import other database, you can specify the database type and version:\n```shell\nstdocker database-import --database-name=test --backup-sql-file=test_20220823.sql --database-type=mariadb --database-version=10.5\n```\n\n### Show the local environment and workspace information\n\n```shell\nstdocker about\n```\nYou can see the following information:\n```\nCurrent environment:\n - lamp\nYour workspace information:\n - Workspace: /home/sunfeng/stdocker\n - Project Directory: /home/sunfeng/stdocker/app\n - Nginx VHosts: /home/sunfeng/stdocker/config/services/nginx/sites-enabled\n - Nginx Log: /home/sunfeng/stdocker/var/logs/nginx\n - Apache VHosts: /home/sunfeng/stdocker/config/services/apache/sites-enabled\n - Apache Log: /home/sunfeng/stdocker/var/logs/apache2\n - SSL CA: /home/sunfeng/stdocker/config/services/ca\n - php.ini: /home/sunfeng/stdocker/config/services/php/php.ini\n - Composer auth.json: /home/sunfeng/stdocker/config/services/composer/auth.json\n - MySQL Log: /home/sunfeng/stdocker/var/logs/mysql\n```\n\n### List all environments\n\n```shell\nstdocker envs\n```\nYou can see the following information:\n```\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| | Env Code | Web Server | PHP | MySQL | MariaDB | phpMyAdmin | Elasticsearch | Elasticvue | Redis | phpRedisAdmin | RabbitMQ | Mailcatcher | MongoDB | Mongo Express | PostgreSQL | Pgweb |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| Basic LNMP | basic | nginx | 7.4 | 8.0 | N | Y | N | N | N | N | N | N | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| Full LNMP | full | nginx | 7.4 | 8.0 | N | Y | 7.16 | Y | 6.2 | Y | 3.9 | Y | Y | Y | Y | Y |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| LAMP | lamp | apache | 7.4 | 8.0 | N | Y | 7.16 | N | 6.2 | N | 3.9 | Y | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| LNMP | lnmp | nginx | 7.4 | 8.0 | N | Y | 7.16 | N | 6.2 | N | 3.9 | Y | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| Magento 2.3 | magento_23 | nginx | 7.3 | 5.7 | N | Y | 7.6 | Y | 5.0 | Y | 3.8 | Y | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| Magento 2.4 | magento_24 | nginx | 7.4 | 8.0 | N | Y | 7.16 | Y | 6.2 | Y | 3.8 | Y | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| Magento 2.4.4 | magento_244 | nginx | 7.4 | 8.0 | N | Y | 7.16 | Y | 6.2 | Y | 3.9 | Y | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n| Magento 2.4.5 | magento_245 | nginx | 8.1 | 8.0 | N | Y | 7.17 | Y | 6.2 | Y | 3.9 | Y | N | N | N | N |\n+---------------+-------------+------------+-----+-------+---------+------------+---------------+------------+-------+---------------+----------+-------------+---------+---------------+------------+-------+\n```\n\nThe highlight row is your current environment, you can use `Env Code` for `stdocker build --env=<ENV>` command.\n\n### Initial workspace\n\nIt will initial your workspace to your home or specified directory, and update env config.\n\n```shell\nstdocker workspace\n```\n\n### Create and setup project\n\n#### Create a new PHP project based on a base template or framework skeleton\n\n```shell\nstdocker create-php-project [OPTIONS]\n```\n\nCreate a Magento 2 project:\n```shell\nstdocker create-php-project --platform=magento --project-name=m2project --target-version=2.4.5\n```\n\ne.g:\n\nCreate a Symfony project:\n```shell\nstdocker create-php-project --platform=symfony --project-name=sfproject\n```\n\n#### Create a new Magento project based on the source code or composer\n\nPlease download the Magento source code from the official website first if use source code to create project.\n\n```shell\nstdocker create-magento-project [OPTIONS]\n```\n\ne.g:\n\nCreate a Magento 2.4.5 project with source code:\n```shell\nstdocker create-magento-project --version-number=2.4.5 --source-code-file=/home/sunfeng/Downloads/adobe-commerce-2.4.5-2022-07-21-08-24-23.zip\n```\n\nCreate a Magento 2.4.5 project with custom project name:\n```shell\nstdocker create-magento-project --version-number=2.4.5 --source-code-file=/home/sunfeng/Downloads/adobe-commerce-2.4.5-2022-07-21-08-24-23.zip --project-name=testproject\n```\n\nCreate a Magento 2.4.5 project with composer:\n```shell\nstdocker create-magento-project --version-number=2.4.5\n```\n\nAlso, we can specify `Adobe Commerce` and `Magento Open Source` via `--version`:\n\n- `enterprise`: Adobe Commerce\n- `community`: Magento Open Source\n\nCreate a Magento 2.4.5 project using Adobe Commerce with composer:\n```shell\nstdocker create-magento-project --version=enterprise --version-number=2.4.5\n```\n\nCreate a Magento 2.4.5 project using Magento Open Source with composer:\n```shell\nstdocker create-magento-project --version=community --version-number=2.4.5\n```\n\n#### Create a new Javascript project based on a base template or framework skeleton\n\n```shell\nstdocker create-js-project [OPTIONS]\n```\n\ne.g:\n\nCreate a React project:\n```shell\nstdocker create-js-project --platform=react --project-name=reactproject\n```\n\n#### Build an existing project based on existing code and database\n\n```shell\nstdocker setup-project [OPTIONS]\n```\n\nSetup HP project:\n```shell\nstdocker setup-project --project-name=hp --db-sql-file=/home/sunfeng/Downloads/20220824201501.sql --country=id\n```\n\n### Upgrade Shinetech Docker\n\n```shell\nstdocker upgrade\n```\n\nUpgrade to the specified version:\n```shell\nstdocker upgrade --target_version=1.0.1\n```\n\nIf you want to restart docker services after upgrade, please use the following command:\n```shell\nstdocker upgrade --force\n```\n\n### Switch network mode for a container\n\n```shell\nstdocker switch-network [OPTIONS] SERVICE\n```\n\n```shell\nstdocker switch-network phpfpm --network-mode=host\nstdocker switch-network phpfpm --network-mode=bridge\n```\n\n### Edit or show configuration of docker-compose.yml\n\n```shell\nstdocker editor [OPTIONS]\n```\n\nShow the configuration in terminal:\n```shell\nstdocker editor\n```\n\nEdit the configuration via vim:\n```shell\nstdocker editor --edit-mode\n```\n\n### Show or live tail docker container logs\n\n```shell\nstdocker logs [OPTIONS] SERVICE\n```\n\nShow all logs for specified container\n```shell\nstdocker logs phpfpm\n```\n\nTail logs for specified container\n```shell\nstdocker logs phpfpm --follow\n```\n\n### Install or upgrade docker compose\n\n```shell\nstdocker setup-docker-compose [OPTIONS] [VERSION]\n```\n\nInstall or upgrade to default version:\n```shell\nstdocker setup-docker-compose\n```\n\nInstall or upgrade to default version:\n```shell\nstdocker setup-docker-compose 1.29.2\nstdocker setup-docker-compose v2.19.1\n```\n\n**NOTE:** Find the newest version from https://github.com/docker/compose/releases\n- v1: https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64\n- v2: https://github.com/docker/compose/releases/download/v2.19.1/docker-compose-linux-x86_64\n\n\n[pypi_badge]: https://badge.fury.io/py/stdocker.svg\n[pypi_link]: http://badge.fury.io/py/stdocker\n\n# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this\nproject adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\n\n\n## [1.2.8] - 2024-01-11\n\n### Added\n\n- Add Stirling PDF, Dynamodb and Dynamodb Admin to env list\n- Add WooCommerce to PHP platforms\n\n\n## [1.2.7] - 2024-01-05\n\n### Fixed\n\n- Fix restart container bugs\n- Fix HTTPError: 400 Bad Request error for twine upload\n\n\n## [1.2.6] - 2023-12-25\n\n### Added\n\n- Add ThinkPHP to PHP platforms\n- Add SonarQube to env list\n\n\n## [1.2.5] - 2023-11-17\n\n### Added\n\n- Set dynamic max width according to columns of terminal size for env list\n\n\n## [1.2.4] - 2023-11-16\n\n### Added\n\n- Add MSSQL to env list\n\n\n## [1.2.3] - 2023-11-15\n\n### Fixed\n\n- Fix database export bug\n- Fix local install package bug\n- Fix selected multiple version display issue for env list\n\n\n## [1.2.2] - 2023-11-14\n\n### Added\n\n- Split database import and export to independent commands\n- Change default env build to Magento 2.4.6\n- Convert multiple service version list to string for env list\n\n### Fixed\n\n- Fix database version issue for create Magento project\n\n\n## [1.2.1] - 2023-11-13\n\n### Fixed\n\n- Fix database version issues\n\n\n## [1.2.0] - 2023-11-13\n\n### Fixed\n\n- Fix package issues for publish and debug\n\n\n## [1.1.9] - 2023-11-13\n\n### Added\n\n- Add database type and version for database import and export\n- Add database type and version for create Magento project\n\n\n## [1.1.8] - 2023-10-31\n\n### Added\n\n- Add OpenSearch to env list\n\n\n## [1.1.7] - 2023-10-27\n\n### Added\n\n- Add C++ and Rust to env list\n- Add bash commands are compatible with container name and service name\n\n\n## [1.1.6] - 2023-10-26\n\n### Added\n\n- Add .Net Core, Java and Ruby to env list\n\n\n## [1.1.5] - 2023-10-23\n\n### Added\n\n- Add Node to env list\n\n\n## [1.1.4] - 2023-10-10\n\n### Added\n\n- Upgrade docker compose to v2\n- Fix docker container name with -, and _ only support for docker compose v1\n\n\n## [1.1.3] - 2023-10-09\n\n### Added\n\n- Add Python and Golang to env list\n\n### Fixed\n\n- Fixed the problem of multiple decimal places with 0 at the end and the last 0 being ignored. See [https://github.com/pri22296/beautifultable/issues/136](https://github.com/pri22296/beautifultable/issues/136)\n\n\n## [1.1.2] - 2023-09-06\n\n### Added\n\n- Add Magento version selection for setup Magento project command\n\n\n## [1.1.1] - 2023-06-30\n\n### Added\n\n- Fix install or upgrade docker compose command\n\n\n## [1.1.0] - 2023-06-30\n\n### Added\n\n- Add install or upgrade docker compose command\n\n\n## [1.0.18] - 2023-05-04\n\n### Fixed\n\n- Fix project name and directory bugs for create Magento project\n\n\n## [1.0.17] - 2023-01-17\n\n### Added\n\n- Add Magento 2 PWA project creation support\n\n\n## [1.0.16] - 2023-01-04\n\n### Added\n\n- Add Vue Storefront and NuxtJS project creation support\n\n\n## [1.0.15] - 2022-12-16\n\n### Added\n\n- Improve start and stop command to support the specified services\n\n\n## [1.0.14] - 2022-12-15\n\n### Added\n\n- Show or live tail docker container logs\n\n\n## [1.0.13] - 2022-11-18\n\n### Added\n\n- Add switch docker container network command\n- Add edit or show configuration of docker-compose.yml command\n- Update command docs\n- Build publish script\n\n\n## [1.0.12] - 2022-11-10\n\n### Added\n\n- Add create js project command\n- Rebuild restart command for restarts all stopped and running services\n\n\n## [1.0.11] - 2022-11-04\n\n### Added\n\n- Add Webgrind to env list\n\n### Fixed\n\n- Fix yes or no display issue for env list\n\n## [1.0.10] - 2022-09-13\n\n### Added\n\n- Add CakePHP, CodeIgniter and Drupal project creation\n- Fix bugs and adjust warning message color\n\n\n## [1.0.9] - 2022-09-09\n\n### Added\n\n- Rebuild create and setup project command\n- Update project creation parameters\n- Add composer auth.json in about command\n- Update use cases\n\n\n## [1.0.8] - 2022-09-08\n\n### Added\n\n- Adjust platforms for init project command\n- Add MariaDB to env table\n- Add sort for env table\n- Add webserver for create project and magento project\n- Add Zend framework to platforms\n- Add status command to list all running containers\n- Add target version to init magento command and make source code is not required\n- Add memcached for env table\n\n\n## [1.0.7] - 2022-09-01\n\n### Added\n\n- Add list envs command and rebuild env handler code\n- Optimize env table and colored current env\n\n\n## [1.0.6] - 2022-08-31\n\n### Fixed\n\n- Fix version convert bug and optimize init magento command\n\n\n## [1.0.5] - 2022-08-30\n\n### Added\n\n- Add conformation when project already exists for initial project\n- Add initial the Magento project command\n\n\n## [1.0.4] - 2022-08-29\n\n### Added\n\n- Add force restart docker services for upgrade\n- Update use cases documents\n- Improve initial project command\n\n\n## [1.0.3] - 2022-08-26\n\n### Fixed\n\n- Fix bugs\n\n\n## [1.0.2] - 2022-08-26\n\n### Added\n\n- Add workspace command\n- Remove GitHub actions\n- Add workspace to init project command\n\n### Fixed\n\n- Fix bug and optimize code\n\n\n## [1.0.1] - 2022-08-23\n\n### Added\n\n- Improve cli\n- Improve documents\n\n### Fixed\n\n- Fix cli bug\n\n\n## [1.0.0] - 2022-08-22\n\n### Added\n\n- Build Shinetech Docker CLI code architecture\n- Implement all functions\n\n### Fixed\n\n- Fix bug: Warning: 'classifiers' should be a list, got type 'tuple'\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Shinetech Docker CLI.",
"version": "1.2.8",
"project_urls": {
"Homepage": "https://github.com/winds1983/stdocker"
},
"split_keywords": [
"python package",
"stdocker",
"shinetech",
"docker",
"development environment"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8e6ad6756e6ba72e61541ec2ac3c2a4e27cc2c154964433b7e31b9416c1a564f",
"md5": "ab72f7c9045716b7f4488394afbc3d14",
"sha256": "79ed0310e44bfbc43f57bf5a4d6f2ba44dad23c345da4ec6a3eba38a4ef2348f"
},
"downloads": -1,
"filename": "stdocker-1.2.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ab72f7c9045716b7f4488394afbc3d14",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 17825,
"upload_time": "2024-01-11T05:34:37",
"upload_time_iso_8601": "2024-01-11T05:34:37.415776Z",
"url": "https://files.pythonhosted.org/packages/8e/6a/d6756e6ba72e61541ec2ac3c2a4e27cc2c154964433b7e31b9416c1a564f/stdocker-1.2.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "afa145095deeac5cfbf4766340c3b906b316536bd0f3522a49208bed0859d943",
"md5": "4a03ed61a8d44b6482d1833b51e90897",
"sha256": "548cfc05ccd373cd0baddc315806a688bab87b8e76309e0de89e2a86a7eb9d46"
},
"downloads": -1,
"filename": "stdocker-1.2.8.tar.gz",
"has_sig": false,
"md5_digest": "4a03ed61a8d44b6482d1833b51e90897",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 22416,
"upload_time": "2024-01-11T05:34:40",
"upload_time_iso_8601": "2024-01-11T05:34:40.040568Z",
"url": "https://files.pythonhosted.org/packages/af/a1/45095deeac5cfbf4766340c3b906b316536bd0f3522a49208bed0859d943/stdocker-1.2.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-11 05:34:40",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "winds1983",
"github_project": "stdocker",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "stdocker"
}