updated Application.md

هذا الالتزام موجود في:
2025-09-15 11:40:31 +03:00
الأصل 16b14fc501
التزام aa49f9b478

عرض الملف

@@ -1,4 +1,4 @@
## What is an Application?
# What is an Application?
When working with the Ghaymah CLI, an **Application** is the central resource youll interact with.
Its not just source code its a deployable unit wrapped in a container, ready to run anywhere.
@@ -11,44 +11,88 @@ Everything else like containers, configs, and logs revolves around it.
---
# Basic Usage
## Basic Usage
```bash
gy resource app [command]
```
Aliases: app, a
> **Tip:** You can use -h or --help to see all available options.
```bash
gy resource app --help
```
## creating an application
### step 1: Initialize the Application
Run the following command to create a new application:
```bash
gy resource app init -p project_id
```
>If you dont know your project ID or havent created a project yet, see the [Projects](Project.md) documentation.
#### Flags
| Flag | what does it do | comment |
| ------------- | ------------------------- | ------------------------------------ |
| -p project_id | specifies the project id | required |
| -n name | Sets the application name | Optional, defaults to directory name |
### Step 2: Deploy the Application
#### deploying from a Dockerfile
### Step 2: deploying from a Dockerfile
To deploy using a **Dockerfile**, ensure that:
- A `Dockerfile` exists in the project directory.
- All necessary files referenced by the `Dockerfile` are present in the same directory.
Once these requirements are met, deploy the application with:
```bash
gy resource app launch
```
#### Deploying from a git repository
## Configuring the .ghaymah.json
Example `.ghaymah.json`
```json
{
"id": "ac2d8eb7-ff49-4b8d-9a8e-92cd3aae22a6",
"name": "nginx",
"projectId": "b887e332-3ecd-4187-bdfb-17d8a437833e",
"ports": [
{
"expose": true,
"number": 80
}
],
"publicAccess": {
"enabled": true,
"domain": "auto"
},
"resourceTier": "t1",
"dockerFileName": "Dockerfile"
}
```
### Changing values
You can change **name**, exposed port, and **dockerFileName** freely.
>you can only have one port per application.
>
### Adding environment variables
Add an `env` object to the top-level JSON.Example:
```json
"env": {
"foo": "bar",
"port": 8080
}
```