Det starta med ei utfordring eg ikkje heilt klarte å riste av meg. Fleire gonger den siste tida har folk sagt til meg – etter eit LinkedIn-innlegg om Purview eller Copilot-governance – at eg burde ha ein blogg. Ikkje berre for den ekstra plassen langtekstane fortener, men fordi LinkedIn ikkje gir deg éin ting eg faktisk sakna: ein RSS-feed folk kan abonnere på utan å vere avhengige av ein algoritme som bestemmer om dei ser innlegget mitt eller ikkje.

Så eg gjorde det. Og sidan eg uansett skriv om Microsoft-sikkerheit og -compliance, kjendest det feil å legge bloggen på noko anna enn Microsoft sin eigen infrastruktur. I sjølvaste Azure, altså. Her er heile reisa – med alt som gjekk gale, for det er nettopp det denne bloggen skal handle om: å vere ærleg om kva som faktisk fungerer, ikkje berre kva som står i marknadsføringa.

Frå idé til plan

Første spørsmålet var ikkje teknisk, men strategisk: kva var eigentleg poenget? Svaret vart at bloggen skulle vere eit steg mot å bidra litt meir til fellesskapet – dele det eg lærer, i staden for berre å konsumere det andre skriv. Det la nokre føringar frå dag éin: eg trong varige URL-ar eg sjølv eig, synleg statistikk, og eit tema eg faktisk kunne stå i over tid – sikkerheit, compliance og KI.

Eg har lese og lært mykje av andre sine LinkedIn-innlegg og bloggar dei siste åra. På eit tidspunkt byrja det å kjennast rart å berre ta imot. Utfordringa frå folk rundt meg trefte difor noko som alt hadde ulma ei stund: bloggen vart måten å byrje å gi litt tilbake, i staden for berre å samle på andre sitt arbeid.

Så kom vinklinga eg var mest nervøs for å seie høgt: eg skriv på nynorsk. Det er ikkje det opplagde valet for eit fagfelt der nesten alt innhald er på engelsk, men eg har fått nokon god tilbakemelding på at det skaper identitet. Og når eg tenkte meg om: er det verkeleg ei ulempe at eg er den einaste som skriv om Purview DSPM på nynorsk? Det er jo nettopp det som gjer meg hugsa.😉

Namnet vart Heilt ærleg – henta rett frå fraser eg alt brukar i LinkedIn-innlegga mine (“lat oss vere ærlege”, “heilt ærleg”). Domenet vart det enklare valet, knutdimmen.no.

Plattformvalet – og det første virkelege problemet

Eg landa på Hugo, statisk sidegenerator, med Azure Static Web Apps som vert. Gratis, ingen server å patche, og – viktigast av alt for ein sikkerheitsblogg – null angrepsflate å skrive om at eg gløymde å oppdatere. Sjølve oppsettet skulle bli artikkel nummer null.

Det gjekk ikkje heilt knirkefritt. Terminal

Første forsøket mitt på å lage sida feila fordi Hugo ikkje var installert enno – og fordi kommandoen for å byte mappe (cd) feila stille, køyrde resten av kommandoane mine i heimemappa på maskina, ikkje i prosjektmappa. Eg enda opp med å gjere C:\Users\KnutPetterDimmen til eit git-repository ved eit uhell, med eit heilt temabibliotek dumpa midt i heimemappa mi. Ærleg tala: eit lite hjartestopp då eg skjøna kva som hadde skjedd. Løysinga var enkel nok – rydde opp, installere Hugo skikkeleg via winget, og byrje på nytt i rett mappe.

Bileta som ikkje ville vise seg

Den mest repeterande hovudverken gjennom heile prosessen var bilete som nekta å rendrast. Hugo bruker noko som heiter “page bundles” – kvar artikkel skal liggje i si eiga mappe, og sjølve tekstfila heite akkurat index.md, ikkje namnet på artikkelen. Eg hadde laga fila med artikkelnamnet i staden, og Hugo fann då rett og slett ikkje bileta som låg i same mappe. vscode feil vscode rett

Same problemet dukka opp att i ei anna form litt seinare: profilbiletet mitt synte 404 heilt til eg oppdaga at fila heitte Knut.jpg med stor K, medan konfigurasjonen min peika på knut.jpg med liten k. Windows bryr seg ikkje om skilnaden – Linux, som Azure bygger på, bryr seg veldig mykje. Ei lita påminning om kvifor “det fungerer på min maskin” er ei av dei farlegaste setningane i IT.

Menyen som forsvann

Ein kveld skulle eg berre legge til eit LinkedIn-ikon på framsida. Det enda med at heile toppmenyen – Arkiv, Tags, Verktøy, Om meg – forsvann sporlaust frå ein tidlegare redigeringsrunde. Konfigurasjonsfila (hugo.toml) er reint tekstformat, og det skal svært lite til før ein heil seksjon berre… er borte, utan feilmelding, utan varsel.

manglende meny scrip

Læringa her vart konkret: commit ofte. Kvar gong noko fungerer, git commit, med ein gong. Det er skilnaden mellom “eg rullar tilbake éi linje” og “eg leitar i tretti minutt etter kva som forsvann”.

Sjølve lanseringa – der Microsoft-skya overraska meg mest

Det var her det vart verkeleg interessant, sidan feilen denne gongen ikkje var min eigen, men Azure sin. Bygget mitt feila med ei kryptisk melding om GLIBC_2.33 not found – ein Hugo-versjon Azure sitt eige byggesystem (Oryx) hadde lasta ned, var rett og slett ikkje kompatibel med byggemiljøet Azure sjølv brukar. Ein velkjend, dokumentert feil, det viste seg, som fleire andre Hugo-bloggarar hadde støtt på berre veker i førevegen.

Github action feila

Første forsøket mitt på å fikse det – pinne ein eldre, kompatibel Hugo-versjon – løyste glibc-problemet, men skapte eit nytt: den versjonen var for gammal til å bygge temaet mitt i det heile. Ei påminning om at éin feil ofte gøymer neste. Den endelege løysinga vart å hoppe heilt over Azure sitt automatiske bygg, og i staden bygge sida sjølv inni GitHub Actions, før Azure berre lastar opp dei ferdige filene. Meir robust, og – ærleg tala – litt meir tilfredsstillande å forstå kvifor det fungerer.

DNS, www, og eit lite hjarteinfarkt på mobilen

Med sida endeleg oppe venta neste runde: eige domene. knutdimmen.no treng ein spesiell DNS-posttype (ANAME/ALIAS, sidan vanleg CNAME ikkje er lov heilt på rotnivå av eit domene), medan www.knutdimmen.no bruker vanleg CNAME. Begge vart validerte fint i Azure-portalen – og så fekk eg likevel “kan ikkje nå denne sida” i nettlesaren.

dns error

Det synte seg å vere DNS-forseinking – nye postar tek tid å spreie seg til alle DNS-tenarar i verda, sjølv om Azure sjølv alt hadde godkjent dei. Sida fungerte på mobildata lenge før han fungerte på laptopen min, nettopp fordi dei brukte ulike DNS-tenarar undervegs. Og for å gjere forvirringa komplett: nettlesaren hoppa automatisk til www-versjonen i staden for hovuddomenet, fordi Azure hadde sett www som “standard”-domene utan at eg hadde valt det bevisst. Løysinga var éin enkelt knapp – Set default – på det korrekte domenet.

Statistikk utan cookiebanner

Det siste steget var å få oversikt over kven som faktisk les. Google Analytics var aldri eit alternativ – ein compliance-blogg som krev eit cookie-samtykke-banner for si eiga sporing hadde vore eit dårleg første inntrykk. I staden landa eg på GoatCounter: gratis, ingen personopplysningar, ingen cookies, og difor heller ikkje noko banner å plage lesarane med.

Heilt ærleg?

Ingenting av dette var vanskeleg i seg sjølv. Kvart enkelt problem hadde ei enkel løysing når du visste kva du leita etter. Det som gjorde kvelden lang, var talet på ulike stader ting kunne gå gale – ei feil mappe, eit feil filnamn, ein feil versjon, ein DNS-post som ikkje hadde rokke å spreie seg enno. Ingen av delane var Azure sin feil åleine, og ingen var berre min eigen feil heller. Det var summen.

Og det er kanskje det mest ærlege eg kan seie om å bygge noko sjølv i Microsoft-skya: det er fullt mogleg, det kostar ingenting i kroner, og du lærer mykje meir enn om du hadde klikka deg gjennom ein ferdig blogg-teneste. Men set av ein kveld – ikkje ein kaffikopp – og forvent at minst éin ting undervegs skal krevje at du googlar ei feilmelding du aldri har sett før.

Bloggen står no her, live, med eige domene, eige tema, ei verktøyside med opne PowerShell-skript som er Under påfyll og ein automatiseringsflyt frå Notion som ventar på å bli teken i bruk. Neste artikkel blir om noko konkret fagleg igjen – men denne skulle handle om vegen hit, feil og alt.