Criação Blog #2
Problemas com Mudanças em Tempo Real no WSL2
Durante o processo de personalização dos arquivos HTML para ajustar o site às minhas preferências, deparei-me com um “problema” que, na verdade, era mais uma inconveniência do que um verdadeiro obstáculo. As alterações que eu fazia no site não eram refletidas em tempo real, exigindo que eu fechasse e abrisse novamente os containêrs para visualizar as mudanças. Esse problema estava relacionado ao WSL2, mas após algumas pesquisas, consegui resolver.
Antes, meu Docker Compose estava configurado assim:
version: '3'
services:
jekyll-serve:
image: jekyll/jekyll:4.0
volumes:
- '.:/srv/jekyll'
ports:
- 4000:4000
command: 'jekyll serve'
Após algumas alterações, para resolver o “problema”, ficou assim:
version: '3'
services:
jekyll-serve:
image: jekyll/jekyll:4.0
volumes:
- '.:/srv/jekyll'
ports:
- 4000:4000
command: bash -c 'bundle install && bundle exec jekyll serve --force_polling --livereload --host 0.0.0.0'
Embora a primeira inicialização tenha se tornado um pouco mais demorada, alguns segundos extras, agora todas as mudanças são refletidas imediatamente. Vou economizar bastante tempo pois não preciso mais ficar abrindo e fechando o contêiner para visualizar as mudanças!
Automatização da Criação de Posts no Jekyll
Ao começar a criar os posts para o blog, deparei-me com as regras específicas do Jekyll. Cada arquivo de postagem segue uma convenção de nomenclatura, como por exemplo, “2024-04-01-criacao-blog-2”, e precisa conter uma configuração inicial em Markdown.
---
layout: post
tittle: "Welcome to Jekyll!"
date: 2020-08-29 09:29:20 +0700
categories: jekyll update
usemathjax: true
---
Para simplificar esse processo, criei um script que automatiza essa etapa, economizando tempo e garantindo consistência na formatação.
---
layout: post
title: "post automatico criado com sucesso"
date: 2024-04-15 20:55:22 -300
description:
tags: []
---
Your content here.
Desafios na Programação de Publicações Futuras
No decorrer ainda encontrei alguns desafios, um desses foi a falta de uma maneira direta de programar a publicação de posts para datas e horários específicos futuros, uma vez que o Jekyll, sendo um gerador de site estático, não oferece essa funcionalidade. No entanto, descobri uma solução alternativa aproveitando o GitHub Pages. Ao realizar um push no repositório na data planejada para a publicação, o site é recriado automaticamente, tornando o post visível para os leitores. Essa abordagem simplificada permitiu que eu planejasse e agendasse as publicações com facilidade.
Hospedagem e Configuração do Site
Ao lidar com a hospedagem do site, enfrentei problemas ao clonar o template do site, pois o GitHub considerava erroneamente a pasta como um submódulo, resultando em erros ao tentar acessar os arquivos necessários. Após várias tentativas e ajustes nas configurações do Git, consegui resolver esse problema e finalmente hospedar o site com sucesso. A busca por um domínio personalizado também foi parte desse processo, e felizmente, através do “GitHub Student Developer Pack”, consegui adquirir um domínio para o meu blog. A configuração do domínio foi simples, exigindo apenas a criação de um arquivo CNAME
e algumas configurações no GitHub, e em menos de um dia, o meu blog já estava online com o novo domínio, adicionando um toque profissional.
Implementação do Google Analytics
Como uma pessoa que gosta de dados e para melhorar a compreensão do desempenho do meu blog e a interação dos usuários, decidi implementar o Google Analytics. Embora inicialmente tenha enfrentado dificuldades com a configuração, fiquei agradavelmente surpreso ao descobrir que o criador do tema já havia integrado uma solução simples para isso. Ao adicionar o Tracking ID
no arquivo _config.yml
, pensei que meu trabalho estava completo. No entanto, logo percebi que o Analytics não estava diferenciando adequadamente as páginas acessadas, tratando todas como uma única página. Após alguma pesquisa, descobri que uma pequena modificação no código gtag
resolveria o problema, permitindo que eu acompanhasse os dados de cada página individualmente.
Antes, a gtag
estava assim:
gtag("config", "G-7XSLYPNSSK");
Depois, a gtag
ficou assim:
gtag("config", "G-7XSLYPNSSK", {
'page_path': '/criacao-blog-2/'
});
Computador com Problemas e Virtual Machine Linux para Desenvolvimento
No decorrer da criação desse segundo post sobre o Blog tive um problema com meu computador onde ele começou a desligar aleatoriamente, a frequência foi bem intensa que em uma dessas vezes o Windows foi corrompido e fui forçado a formatar o computador. Depois de muito testes nas peças descobri que tudo isso aconteceu devido a um problema em uma de minhas memórias RAMs. Felizmente tenho costume de fazer Backups frequentes, então essa formatação não foi um impacto pesado, perdi apenas informações de 2~3 dias, porém devido a isso tive uma ideia. Vou separar meu Windows do meu sistema de desenvolvimento.
Já estava a um tempo querendo voltar a mexer com Linux, última vez que mexi acho que a versão do Ubuntu ainda era 16. Sempre gostei da ideia de Linux, porém devido a vários motivos, nunca adotei Linux como meu sistema operacional principal, antes fazia um Dual-boot porém é bem chato ficar toda hora tendo que sair e voltar. Pensei em usar WSL, porém como, pelo que eu pesquisei, toda a interação é através do terminal, acho que ia ficar um pouco pesado para mim, que estou bem enferrujado com os comandos, então decidi optar por uma Virtual Machine, pois posso colocar ela em um HD separado e fica a salvo caso Windows dê algum BO futuro. Sem falar que ao configurar posso criar uma imagem e criar outras VMs a partir dela.
Conclusão e Próximos Passos
E com isso concluo os posts sobre a criação do Blog em si! O próximo post vai ser explicando um template que criei para projetos que usam a linguagem Python, a ideia surgiu quando estava desenvolvendo um projeto pessoal e quis dar uma melhorada na qualidade dos meus códigos e dos projetos em si em geral, aumentar a maturidade, gostei tanto do resultado que decidi criar um template para servir de ponto de partida de todos os meus projetos futuros!
Vejo vocês lá!