LusoRobótica - Robótica em Português

Discussão Geral => Off-topic => Tópico iniciado por: TigPT em 15 de Julho de 2017, 09:20

Título: Docker
Enviado por: TigPT em 15 de Julho de 2017, 09:20
Ando aos poucos a passar os serves e os vários sites e serviços para docker, estando já algumas coisas a correr em docker em produção.

Contudo tem surgido algumas questões e lembrei-me de perguntar se por estas bandas alguém costuma trabalhar com Docker. Seria interessante ter alguém do LR com quem discutir ideias e trocar algumas dúvidas.
Título: Re: Docker
Enviado por: edeweld em 15 de Julho de 2017, 20:32
Já trabalhei com o Docker. Antes trabalhava com o vagrant.
Gostei bastante da abordagem. Mas uma vez que apenas utilizei para alguns projectos e para ajudar um colega (há coisa de um 1 ano), não me sinto preparado para debater sobre o assunto.

Mas boa iniciativa, de utilizar o docker. Caso não conheças: https://www.docker.com/community/meetup-groups Existe um grupo em PT no meetup.com

Boa sorte

[UPDATE]
Para quem utiliza vagrant, passar para o docker é algo de outro mundo. Mesmo bom!  ;D
Título: Re: Docker
Enviado por: TigPT em 15 de Julho de 2017, 22:45
Gostei da abordagem do Docker, quer em termos de dar mais portabilidade, mais estabilidade ao isolar os serviços assim como facilitar a manutenção, contudo há alguns pormenores mais específicos, em especial do docker composer que gostava de trocar umas impressões.

Não tenho tido muito tempo para o estudar e queria um shortcut. Assim como estou a sentir uma grande atração pelo docker swarm mas tenho receio que o overhead possa não compensar para a dimensão dos serviços que tenho a correr.

Obrigado na mesma pela resposta edweld. Não conhecia o grupo PT noMeetup, vou me inscrever.
Título: Re: Docker
Enviado por: edeweld em 15 de Julho de 2017, 23:19
Investir no Docker ou no Vagrant nunca é perda de tempo!
Se vieres de Linux, como eu, vais adorar ainda mais estes serviços. Pois com simples comandos, mas poderosos, consegues dar um up num servidor completo à tua medida.
A vantagem do docker para o vagrant, pois foi o que motivou a sua criação, é que no docker consegues isolar serviços, daí a analogia ao navio e contentores. Enquanto que no vagrant tens que criar toda a máquina completa, mesmo com serviços que já não queiras. Ou caso pretendas experimentar uma nova versão do php, por exemplo, e ficas naquele impasse "epá, vou instalar a nova versão, vou desarrumar isto tudo e depois tenho que instalar a máquina de novo" - Ok, leva pouco tempo...meia dúzia de comandos e já está. Mas leva sempre tempo!

No docker não é assim. No docker crias um container para a nova versão do php, corres a tua app ou site para testar, e no fim podes ficar a utilizar esse container e deixas de utilizar o container referente à versão do php antiga, ou desativas o container e tens o teu ambiente de volta!

Caso não percebas inglês este é um bom livro: https://www.casadocodigo.com.br/products/livro-docker

[UPDATE]
No docker podes apenas colocar a correr os serviços que precisas. O navio, base, tens o teu SO igual ao servidor. Acoplado a ele tens os containers com todos os serviços que precisas. E pelo o que eu percebo de fóruns tu precisas de uma coisa destas para developer!  8) :D
Git, utilizas?

Título: Re: Docker
Enviado por: TigPT em 15 de Julho de 2017, 23:30
Não tenho utilizado... já tentei em tempos mas não muito e deixei de lado. estava a ver se no próximos tempos dava um forcing para me habituar a introduzir o git no me workflow.

Queres me dar uma ajuda a saltar para o barco do git ?

Quanto a docker, neste momento a db do forum já está a correr num container com mariaDB, embora o PHP e nginx ainda estejam na maquina antiga. estou com dificuldades em configurar exim4 ou outra alternativa para sendmail no docker.

mas já lá tenho a correr um nginx como proxy, e o meu blog em ghost.org assim como pequenos sites em php, estou muito satisfeito com docker-composer até ao momento mas estou a aprender fazendo e o tempo não tem sido muito embora agora vá passar a ser.

tenho andado a desenvolver em produção, o que não se faz!!!

Nos próximos tempos vou começar a programar mais e tenho que ver se me obrigo mesmo a começar a usar git para deixar este habito e começar a ficar com mais versões e com mais documentação do que faço!
Título: Re: Docker
Enviado por: edeweld em 16 de Julho de 2017, 00:59
Assunto Git:
A melhor ajuda que te posso dar é esta: https://try.github.io/levels/1/challenges/1 - https://git-scm.com/book/en/v2
Claro que podes colocar questões que tentarei ajudar  ;D

Se poderes arranjar um rpi e cria um servidor local para testares o git! Assim podes fazer todas as asneiras num ambiente controlado!

Se vais ter tempo para aprender então começa por fazer um ponto da situação. E aprender fundamentalmente os branchs do git! Assim tens um branch para produção e outro para developer.
Investe bastante no git e em docker, ou vagrant, conforme gostares. Esse tempo vai se bastante importante para o teu desempenho no futuro!
Título: Re: Docker
Enviado por: edeweld em 16 de Julho de 2017, 02:28
Esqueci de referir!
O git leva a uma mudança, para melhor, de programar/trabalhar. Muitas pessoas não gostam do git pois ele obriga a sermos organizados e a planear o trabalho. Isso para além das razões óbvias é muito bom em termos de documentação do projecto.

Apenas para perceberes melhor. Quando um estagiários entra numa equipa de developer a sua primeira tarefas é ler os commit dos projectos! Neles e no código tem toda a documentação que precisa para perceber o projecto. Isto claro, se a equipa de developer fizer bom uso das ferramentas!

Eu adoro estes métodos. Sou da opnião que os comentários no código devem contar uma história do código! Assim qualquer pessoa ou mesmo nós, após uns 6 meses, conseguimos saber o que aquilo faz!

O pessoal que não comenta código por norma não passe conhecimento e gosta de dizer que é bom e tal....  :D ;D

Nota: Obvio que se for uma versão comercial a história é outra, por razões óbvias!
Título: Re: Docker
Enviado por: TigPT em 16 de Julho de 2017, 10:04
Obrigado pelas dicas, quero mesmo ver se mudo o meu workflow uma vez que vou começar a trabalhar mais com código e mesmo que seja sozinho, seria muito bom conseguir criar o habito de introduzir Git no processo sem ser só para fazer umas de segurança de vez em quando.

Temos que combinar um cafezinho para conversar, agora vou passar a ter mais flexibilidade de horário.
Título: Re: Docker
Enviado por: Tech_JA em 16 de Julho de 2017, 17:20
Dá um "vista de olhos" no GitKraken (https://www.gitkraken.com/), pode ser que seja útil para o que pretendes
Título: Re: Docker
Enviado por: TigPT em 16 de Julho de 2017, 17:24
Mudei de computador portátil recentemente (1 semana) e estava a ver de ferramentas para evitar software crackado mas não rebentar o meu orçamento e por acaso o GitKraken foi o git client que instalei :) mas fizeste bem em partilhar que podia não o conhecer.

Durante a próxima semana vou começar a ver os tutoriais deles para me ambientar.

Alguém conhece uma boa alternativa ao Coda (Panic) para Mac?
Os FTP clients e text editors que espreitei não me deixaram convencido.

E queria evitar os 100€ de licença do Coda, pelo menos até começar a faturar mais.
Título: Re: Docker
Enviado por: edeweld em 16 de Julho de 2017, 18:42
Boa dica a do gitkraken!
Preciso é de arranjar um serviço de hospedagem de site que permita receber git push! Pois não tem jeito nenhum estar a utilizar o git no meu ambiente e depois ter que andar com Cpanels ou ftp's!
Título: Re: Docker
Enviado por: TigPT em 16 de Julho de 2017, 18:47
Bitbucket acho que tem.

Também podes implementar um php que executas para fazer pull para o server

https://stackoverflow.com/questions/23136044/automation-of-git-pull-using-php-code
Título: Re: Docker
Enviado por: edeweld em 16 de Julho de 2017, 19:04
Bastante interessante. Neste plano, https://pt.godaddy.com/hosting/web-hosting (O económico), a godaddy fornece a possibilidade de actualizar os dados no servidor via git?

Outro questão é se isso funciona com um servidor pessoal! Tenho um servidor no escritório para o git. Tinha interesse em executar os comandos da dica que partilhas-te mas via o meu servidor.

[UPDATE]
Alguém consegue instalar este serviço, https://www.gitkraken.com, em ambiente próprio (empresa)?
Título: Re: Docker
Enviado por: TigPT em 16 de Julho de 2017, 19:10
Gitkraken é só um cliente para dar uma interface gráfica. Precisas de um serviço com github bitbucket ou um server git teu instalado algures e acessível.

Em relação ao serviço da godaddy não sei se permite correr esses comandos php mas basicamente podes em qualquer hosting fazer o pull das diferenças. Acho que o bitbucket até permite que sempre que faças um push ele receba os dados e execute um curl num ficheiro php para que possas ordenar o pull para o websetver.

Quando analisar melhor essas opções posso depois partilhar a solução que vier a utilizar.
Título: Re: Docker
Enviado por: edeweld em 16 de Julho de 2017, 20:56
Mas o bitbucket fornece o mesmo serviço que a godaddy a nível de alojamento? No github pode colocar lá um site que ele fornece serviço. Do que tenho experiência funciona com html, mas não sei se funciona com php!
Título: Re: Docker
Enviado por: TigPT em 16 de Julho de 2017, 21:10
GitHub é um repositorio de código SVN, não é uma empresa de hosting de websites.

Podes meter conteúdo estático como html mas não podes executar PHP server side.

Estás a misturar dois tópicos diferentes, uma coisa é gestão de código, outra é alojamento de websites.
Título: Re: Docker
Enviado por: edeweld em 16 de Julho de 2017, 21:14
Ok, mas existe alojamento de websites com serviço de git? Que permitam fazer git push e git clones!?
Título: Re: Docker
Enviado por: TigPT em 16 de Julho de 2017, 21:17
Não conheço mas deve de haver. Contudo o que eu dizia é que podes fazer isso mesmo que não exista de origem, com um script php.

Quando fizer isso depois partilho.
Título: Re: Docker
Enviado por: KammutierSpule em 17 de Julho de 2017, 10:35
O GitHub não é um repositório de código SVN.
From wikipedia:
"GitHub is a web-based Git or version control repository and Internet hosting service."

O GitHub disponibiliza host para repositórios Git, permitem-te fazer git push e git clones.
Oferece hosting free para repositorios públicos, não sei o plano deles para repositórios privados..
Título: Re: Docker
Enviado por: senso em 18 de Julho de 2017, 11:12
Tens carradas de repositórios online gratuitos, obviamente que se queres de graça é publico, para ser privado tens de pagar..
Os que me recordo de cabeça são:
https://bitbucket.org/
https://about.gitlab.com/gitlab-com/
E claro, o git hub.

Podes sempre ter um repositório local, metade das vantagens é puderes fazer roll-backs no código e branchs e afins, e se não escreveres comentários decentes em cada commit tambem acaba por perder grande parte do seu valor, porque deixas de saber o que é que fizeste ou o que é que funcionava ou não naquela versão do código.

E hosting gratuito para sites, tens sempre o wordpress, tenho lá um blog perdido á anos e anos..
Título: Re: Docker
Enviado por: Tech_JA em 19 de Julho de 2017, 07:17
no GitLab  (https://about.gitlab.com/)podes ter projectos privados
Título: Re: Docker
Enviado por: edeweld em 25 de Julho de 2017, 09:00
https://www.revista-programar.info/edicoes/edicao-55/
Título: Re: Docker
Enviado por: LVirtual em 25 de Julho de 2017, 09:08
https://www.revista-programar.info/edicoes/edicao-55/
;)
Título: Re: Docker
Enviado por: TigPT em 25 de Julho de 2017, 10:01
Obrigado por partilharem.

Está um artigo interessante para quem não teve nenhum contacto com o docker, mas basicamente é a tradução dos tutorials iniciais.

Parabéns ao Nuno pelo artigo. Quem sabe venha a escrever mais sobre o assunto.
Título: Re: Docker
Enviado por: nnr em 12 de Dezembro de 2017, 13:41
O RhodeCode (https://rhodecode.com/) também parece ser uma alternativa ao GitLab. Para servidores e alojamentos pagos, essa lista (https://www.melhorhospedagemdesites.com/) pode ajudar. Outra dica é que o GitHub (https://education.github.com/) te dá um ano de graça no pacote pago se você tiver um email .edu.