MySQL Deployment with `nifectl`
This section explains how to deploy a MySQL database using the nifectl CLI.
Initialize the MySQL Application
Use the nifectl init command to register your MySQL application and generate the required nife.toml file.
nifectl init --name your-database-name --builtin mysql --org your-organization-name --volume-size 1 --volume-path /var/lib/mysql --port 3306 --external 3306 --replica 1 --routing-policy Latency --request-memory 12 --request-cpu 0.5 --limit-memory 12 --limit-cpu 1
Explanation of Flags
--name: A unique name for your application.--builtin=mysql: Specifies the use of MySQL as the runtime.--org: The organization name that will own the app.--volume-size: Size of the persistent volume in GB.--volume-path: Filesystem path inside the container (/var/lib/mysqlfor MySQL).--portand--external: Internal and external port (default MySQL port is 3306).--request-*and--limit-*: Resource configuration for CPU and memory.--replica: Number of instances (replicas) to be deployed.--routing-policy: Defines how traffic is routed (e.g., Latency, Geolocation).
Deploy the MySQL Application
Once the application is initialized, deploy it with the required environment variable using the following command:
nifectl deploy -e MYSQL_ROOT_PASSWORD=your-secret-password
- Replace
your-secret-passwordwith a secure password of your choice. MYSQL_ROOT_PASSWORDis required by MySQL to initialize the root user.