? La aplicación de buenas noticias es un proyecto de código abierto completamente abierto creado excepcionalmente para fines educativos. Contiene backend (puede ver la respuesta si abre este enlace https://api.good-news.ggc.team/v1/news/ ) escrito en aplicaciones móviles de Golang, iOS y Android (que publicaré en App Store y Google Play) hechas con Flutter y Frontend con colmismo (flutador para web). Los enlaces a repositorios para el código de aplicaciones móviles y frontend se agregarán más tarde cuando termine de trabajar en ellos. Mi código no va a ser perfecto debido al hecho de que no soy un súper profesional en ninguno de esos temas, pero haré todo lo posible, prometiré ✌️, soy un defensor de una idea de compartir conocimiento con el mundo porque siempre es bueno compartir lo que ha aprendido con aquellos que podrían luchar con los mismos problemas que enfrentó y al hacerlo, también aprenderé algo nuevo. Estrategia de ganar-ganar.
Estoy en proceso de escribir capítulos divididos en artículos sobre medio. A continuación encontrará enlaces a ellos. Se actualizarán cuando termine de trabajar en ellos.
Artículo introductorio: aquí también encontrará toda la información introductoria y los enlaces a otros capítulos.
Todos los capítulos de un "libro":
Y aquí hay artículos del capítulo actual (repositorio):
Para lanzar este proyecto localmente, debe tener instalados a Golang y Docker en su máquina.
Aviso: el código en este repositorio no es una versión final de lo que he estado contando en mis artículos. Por ejemplo, si desea saber cómo publicar este proyecto en la gota de océano digital detrás de Traefik Reverse Proxy con HTTPS disponibles en su propio dominio, deberá seguir todos los artículos anteriores.
En primer lugar, debe en cd a dónde está su $GOPATH en su máquina, luego cd a $GOPATH/src/github.com/<your_github_or_any_username> . Después de eso, clonará este repositorio, cd y lo ejecutará con Docker Compose. Por favor, asegúrese de que su Docker se lance con éxito mientras sigue los pasos a continuación. Entonces los pasos son:
> cd ~/go/src/github.com/kanzitelli/ - Puede ser diferente de la suya dependiendo de su $GOPATH y nombre de usuario . Para verificar dónde apunta $GOPATH , escriba go env en Terminal y lo encontrará al comienzo de la lista impresa.> git clone https://github.com/kanzitelli/good-news-backend.git> cd good-news-backend/> docker-compose build && docker-compose up -dlocalhost:6969/v1/news/sources . No deberías ver nada, claro. ¿Porque también necesitamos configurar MongoDB?> docker exec -it mongo mongo -u "GGCTeamBatr" -p "MySuperSecretPassword" --authenticationDatabase admin -para abrir el shell de Mongo DB que se ejecuta dentro de nuestro contenedor Docker> use good_news_db , por lo que cambiamos (creamos) a DB necesario> db.createUser({user: 'suuuper_user', pwd: 'soop3r_U$eR_PSWD', roles:[{role:'dbOwner', db:'good_news_db'}]}) - Creación de un súper usuario '> db.test_collection.insert({ test: "test" }) - Inserción de datos de prueba para probar la recopilación> show collections : mostrando todas las colecciones de nuestro DB creado anteriormente para asegurarse de que nuestra colección de pruebas se creara con éxito> exit - Decir adiós a Mongo Shell> docker ps : para mostrar todos los contenedores Docker en ejecución. Encuentre CONTAINER ID (primera columna) del contenedor llamado api .> docker stop <api_contrainer_id> - para detener el contenedor API. Lo volveremos a ejecutar en el siguiente paso.> docker-compose build && docker-compose up -d -para reconstruir nuestro contenedor Docker con nuevas configuraciones aplicadas a MongoDB..env en la raíz del proyecto (en caso de que desee cambiarlos)localhost:6969/v1/news/sources . Ahora debería ver fuentes de noticias que se llenan antes del lanzamiento del servidor. Después de 3 minutos, podrá ver las primeras noticias reunidas de los sitios de noticias de análisis al abrir localhost:6969/v1/news . ¿Por qué 3 minutos? Siga mis artículos sobre medio para comprender queSi tiene algún comentario o sugerencia, no dude en enviarme un correo electrónico a [email protected]. Si desea saber cuándo publico nuevos artículos, ¿sígueme en Twitter?