Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

new doc #1086

Merged
merged 22 commits into from
Sep 20, 2023
Merged

new doc #1086

merged 22 commits into from
Sep 20, 2023

Conversation

suchen-sci
Copy link
Contributor

No description provided.

@suchen-sci suchen-sci marked this pull request as draft September 4, 2023 08:27
@suchen-sci suchen-sci marked this pull request as ready for review September 14, 2023 01:40
@suchen-sci suchen-sci changed the title add structure for new doc new doc Sep 14, 2023
README.md Outdated
- [WebSocket](docs/02.Tutorials/2.6.Websocket.md) - WebSocket proxy for Easegress
- [Workflow](docs/03.Advanced-Cookbook/3.10.Workflow.md) - An Example to make a workflow for a number of APIs.

For full list, see [Tutorials](docs/02.Tutorials/README.md) and [Cookbook](docs/03.Advanced-Cookbook/README.md).

## Getting Started
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's better to add minimal scripts containing starting server and creating HTTP proxy by using egctl create httpproxy ....

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated, please check.


The easiest way to install Easegress is by using pre-built binaries:

1. Download the appropriate compressed archive file for your platform from [Releases](https://github.com/megaease/easegress/releases).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's better to give 3 lines of scripts to demo to help users copy-change-paste. Most readers just want to copy-paste.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is download release from github by using web browsers like Chrome or Edge. Then double click it to uncompressed the file. So... Write scripts is a little bit complicated depend on different os and different browsers. I do add examples in the following ways.


The reverse proxy is the common middleware that is accessed by clients, forwards them to backend servers. The reverse proxy is a very core role played by Easegress.

The filter `Proxy` is the filter to fire requests to backend servers. It contains servers group under load balance, whose policy support `roundRobin`, `random`, `weightedRandom`, `ipHash`, `headerHash`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is better to refer to the balance reference to check all specs of all policies.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

@@ -16,10 +16,10 @@ whether a request/response is a stream, for example:

* We can set `clientMaxBodySize` of an HTTP server to a negative value to
tell Easegress the request is a stream, and not a stream otherwise. Please
refer [HTTP Server](./controllers.md#httpserver) for more information.
refer [HTTP Server](7.01.Controllers.md#httpserver) for more information.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this file lay in the developer guide part instead of reference?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Stream.md is mainly used to explain clientMaxBodySize argument in HTTPServer and serverMaxBodySize argument in Proxy. It is referenced by HTTPServer and Proxy filter too.

Copy link
Collaborator

@LokiWager LokiWager left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is an amazing job, however, I have some questions

  • what's the difference between doc directory and docs directory? why do we remain the doc?
  • The URL of some pictures might be outdated. Please check it and make sure it is right, especially the essential files like README.md.

@@ -13,22 +13,14 @@
alt="Easegress logo" title="Easegress" height="175" width="175" align="right"/>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<img src="./doc/imgs/easegress.svg" should be ./docs/imgs/easegress.svg.

There would be other similar problems, please check it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

docs/04.Cloud-Native/4.1.Kubernetes-Ingress-Controller.md Outdated Show resolved Hide resolved
docs/04.Cloud-Native/4.1.Kubernetes-Ingress-Controller.md Outdated Show resolved Hide resolved
docs/04.Cloud-Native/4.1.Kubernetes-Ingress-Controller.md Outdated Show resolved Hide resolved
docs/04.Cloud-Native/4.1.Kubernetes-Ingress-Controller.md Outdated Show resolved Hide resolved
Version: 1.0.0
Hostname: hello-deployment-6cbf765985-r6242
```

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the description to the document.

  • NOTE:

You can get the NODE_IP and NODE_PORT by running the following command:

export NODE_PORT=$(kubectl get --namespace easegress -o jsonpath="{.spec.ports[0].nodePort}" services easegress)
export NODE_IP=$(kubectl get nodes --namespace easegress -o jsonpath="{.items[0].status.addresses[0].address}")
echo http:https://$NODE_IP:$NODE_PORT

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

@suchen-sci
Copy link
Contributor Author

suchen-sci commented Sep 19, 2023

@LokiWager

It is an amazing job, however, I have some questions

  • what's the difference between doc directory and docs directory? why do we remain the doc?

For first question, there are two main reasons...

  1. In Standard Go Project Layout, they use docs instead of doc. So, this pr is kind of correct it I think.
  2. Because we use github to display our document, so there are important links we should keep when update doc. For example, in kubernetes ingress controller, we link easegress ingress controller to https://github.com/megaease/easegress/blob/main/doc/reference/ingresscontroller.md then we need to keep the structure in doc. And that will influence the new document structure. So, using a new folder makes life easy.

@suchen-sci suchen-sci added this pull request to the merge queue Sep 20, 2023
Merged via the queue into easegress-io:main with commit 0722e3b Sep 20, 2023
1 check passed
@suchen-sci suchen-sci deleted the update-doc branch September 20, 2023 06:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants