stdocker


Namestdocker JSON
Version 1.2.8 PyPI version JSON
download
home_pagehttps://github.com/winds1983/stdocker
SummaryShinetech Docker CLI.
upload_time2024-01-11 05:34:40
maintainer
docs_urlNone
authorJason Sun
requires_python>=3.8
licenseMIT
keywords python package stdocker shinetech docker development environment
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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"
}
        
Elapsed time: 0.18705s