Ervaringen met een Macbook Pro M1 icm .Net en Docker

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Marco1994
  • Registratie: Juli 2012
  • Nu online
Momenteel heb ik een Windows laptop van de zaak, die ik gebruik voor met name .Net ontwikkeling icm docker containers. Echter loopt deze op zijn einde en ben ik aan het oriënteren voor een nieuwe. Voorheen had ik een Macbook Pro met intel i9 processor en hierbij had ik geen problemen. Er waren soms scenarios (oude legacy code) waarbij ik een windows omgeving nodig had, de oplossing hiervoor was een dual boot.

Ik werk persoonlijk efficiënter in OSX dan in Windows, zodoende ben ik aan het kijken naar een nieuwe Macbook Pro. Echter heb ik totaal geen ervaring met de nieuwe architectuur en ben ik bang dat ik tegen problemen aan ga lopen. Ik ben dus eigenlijk opzoek naar hands on ervaring van .Net developers met een vergelijkbare macbook.

Loop je wel eens tegen problemen aan? Zoja; heb je hier een oplossing voor kunnen vinden? Werkt Docker tegenwoordig gewoon? Windows 11 zou moeten kunnen draaien als ik het goed gelezen heb? Werkt dit goed?

Lijst met relevante software en aanverwanten:
  • .Net
  • Docker
  • Xamarin
  • React(-Native)
Ik heb dit topic hier geplaatst aangezien hier hoogstwaarschijnlijk de meeste .Net developers met handson ervaring zitten, mocht het beter passen in Laptop Aankoop Advies dan graag even verplaatsen.

Acties:
  • 0 Henk 'm!

  • GnrlSchnavy
  • Registratie: April 2013
  • Laatst online: 28-09 09:28
Ik ben geen .net developer maar Java met m1.
- Docker werkt prima!

Acties:
  • 0 Henk 'm!

  • Falcon
  • Registratie: Februari 2000
  • Laatst online: 29-09 08:39

Falcon

DevOps/Q.A. Engineer

Wij builden/publiceren onze development docker images in onze pipelines, zodat wij in onze team Azure Container Repository altijd de laatste versie van een docker image beschikbaar hebben. Zo kunnen we d.m.v. een generiek docker-compose script deze docker-images pullen uit deze team ACR en hoeven we minder lokaal te builden. Wil ik dus nu lokaal gaan ontwikkelen voor bijv. Front-end, dan is de rest van de keten beschikbaar met 1 keer draaien van de docker-compose.

Voor het builden van deze images maken we gebruik van "docker buildx", zodat diverse platformen worden ondersteund (amd64 en arm64 in ons geval). Hierdoor werd het mogelijk om dezelfde image te gebruiken op zowel HP/Dell en Macbook M1 laptops voor het starten van containers zonder foutmeldingen.

Moraal van het verhaal, mocht je een docker image willen uitwisselen tussen devices met een andere chipset, dan moet je ze dus multi-platform builden.

Verder prima mogelijk om .net oplossingen native te draaien op M1.. maar het is wel even wat uitzoekwerk wat ik zo begreep van mijn M1 collega's. Wel zijn ze volledig bezig in Visual Studie Code ipv Visual Studio.

[ Voor 19% gewijzigd door Falcon op 01-06-2022 12:04 ]

"We never grow up. We just learn how to act in public" - "Dyslexie is a bitch"


Acties:
  • 0 Henk 'm!

  • _360_
  • Registratie: Januari 2011
  • Laatst online: 11:06
Ik heb Windows 10 gedraaid als .NET developer op een Macbook pro uit 2016 bij een toemalige werkgever.
Je kan windows draaien met Parallels of Bootcamp.

Ik vond het geen success. Als je VS shortcuts gebruikt loop je snel tegen de beperking heeft dat je keys op je toetsenbord mist die belangrijk zijn om productief met Visual Studio te kunnen werken (bv. Alt, PgUp, PgDown, home, end).
Daarnaast conflicteren een paar keybindings van VS met Mac / Parallels.

Om goed te kunnen werken op een Mac, had ik alle 4 Usb-C aansluitingen nodig: een stroomadapter, los windows toetsenbord, een losse muis en een adapter voor een netwerkkabel voor snel internet.

Persoonlijk ben ik voor .Net development erg tevrede met een Dell XPS 7590

Om op je vraag terug te komen: Docker en VS draaien prima binnen Windows op een mac.

Acties:
  • +1 Henk 'm!

  • Greatsword
  • Registratie: Februari 2010
  • Niet online

Greatsword

"...Terra Incognita..."

_360_ schreef op woensdag 1 juni 2022 @ 12:02:
Ik heb Windows 10 gedraaid als .NET developer op een Macbook pro uit 2016 bij een toemalige werkgever.
Je kan windows draaien met Parallels of Bootcamp.
Het gaat hier om een M1, geen INTEL Mac.

@Marco1994 Heb je dit topic al doorgespit? [MacBook Pro (14- en 16-inch) 2021] – Ervaringen & Discussie

[ Voor 17% gewijzigd door Greatsword op 01-06-2022 12:05 ]

“…There is nothing either good or bad, but thinking makes it so…”


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Docker-development staat of valt met een goeie filesystem-sync, en die is met de in maart 2022 gelanceerde support voor VirtioFS "aardig" te noemen.

Je moet nog steeds geen tienduizenden files willen syncen (Composer, Node), maar daar heeft .NET sowieso minder last van.

Zo kun je dotnet watch in je container runnen, of de op je host gecompileerde output naar de container laten kopiëren, zonder je container telkens opnieuw te laten bouwen, om zo de feedback loop zo klein mogelijk te houden.

Voor meer concrete informatie of de door jouw gewenste werkwijze daadwerkelijk werkt op een Mac, zul je moeten uitleggen hoe je precies werkt.

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
@Marco1994 Wat ik in jouw verhaal mis: welke IDE gebruik jij? Collega van mij zweert bij zijn MacBook, maar doet alles met Visual Studio Code en daar heb ik een beetje moeite mee :P

Het blijft toch een glorified text editor. Ik gebruik hem ook vaak voor frontend development, maar als ik aan een .NET project werk, vind ik een volledige Visual Studio simpelweg veel fijner om mee te werken.

Wel kun je eventueel kijken naar JetBrains Rider. Heb daar zelf geen ervaring mee, maar dan krijg je iig een volledige IDE met de features van Resharper erbij.

Tenzij jij ook zo'n Visual Studio Code script kiddie bent, dan heb ik niks gezegd :P _O-

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Marco1994 schreef op dinsdag 31 mei 2022 @ 15:54:
Windows 11 zou moeten kunnen draaien als ik het goed gelezen heb? Werkt dit goed?
Nee. Alleen Windows 11 voor ARM en alleen Windows software voor ARM. Althans, dat is wat ik gelezen heb daarover. Dus verwacht niet een volledig inzetbare Windows 11 te kunnen inrichten.

Die collega van mij draait dus een Windows 11 virtuele machine op 1 van onze servers daarvoor (benadert hij met Remote Desktop). Beetje zielig eigenlijk :P Heeft de duurste machine van ons allemaal, en kan er het minste mee als je het rationeel bekijkt.

Maar ja, Apple fanaat en hij vindt het leuker.

[ Voor 28% gewijzigd door Lethalis op 01-06-2022 14:45 ]

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Marco1994
  • Registratie: Juli 2012
  • Nu online
Dank voor alle antwoorden en ervaringen. We gebruiken Docker niet heel intensief, lokaal gebruiken we het voor de microservices en wat bijbehorende containers (denk aan SMTPDev, Database, etc). Als IDE gebruik ik primair Rider met hier en daar wat Visual Studio Code voor wat Frontend werk. Ik denk dat het beste is om even te kijken of ik een macbook m1 kan lenen van iemand om te kijken of alles werkt zoals ik wil.

Het is in ieder geval goed om te positieve berichten te horen. Dank!

Acties:
  • +1 Henk 'm!

  • Falcon
  • Registratie: Februari 2000
  • Laatst online: 29-09 08:39

Falcon

DevOps/Q.A. Engineer

@Marco1994 Ik denk dat het ook echt belangrijk is dat je moet beseffen dat elke nuget package geschikt zal moeten zijn voor M1 of deze zal geemuleert moeten draaien.

Doordat bijv. Github nog geen M1 buildagents heeft liep ik hier bijv. tegen aan met Pact-Net (CDCT)

"We never grow up. We just learn how to act in public" - "Dyslexie is a bitch"


Acties:
  • 0 Henk 'm!

  • Sijmen
  • Registratie: November 2004
  • Laatst online: 01-10 13:44
Falcon schreef op woensdag 1 juni 2022 @ 15:57:
@Marco1994 Ik denk dat het ook echt belangrijk is dat je moet beseffen dat elke nuget package geschikt zal moeten zijn voor M1 of deze zal geemuleert moeten draaien.
Hoezo? Verreweg de meeste NuGet packages zijn toch puur CLR code en dus AnyCPU?

Wat betreft de situatie met Windows, het is mogelijk de arm64 versie van Windows als virtual machine te draaien en op Build werd aangekondigd dat ook Visual Studio binnenkort een native arm64-versie krijgt. Dan draai je alles native maar zit je nog steeds met da je andere architectuur gebruikt dan bijna alle andere ontwikkelaars op Windows.

Ikzelf zou zeker voor die M1 gaan, maar zou er wel rekening mee houden dat er af en toe wat gefixt moet worden.
Lethalis schreef op woensdag 1 juni 2022 @ 14:34:
Die collega van mij draait dus een Windows 11 virtuele machine op 1 van onze servers daarvoor (benadert hij met Remote Desktop). Beetje zielig eigenlijk :P
Zo voel ik me met m’n twee WSL-installaties op Windows (WSL2 voor Docker maar die verliest z’n netwerkverbinding als de VPN aan gaat, WSL1 om dan alsnog andere tools te kunnen gebruiken)

[ Voor 22% gewijzigd door Sijmen op 04-06-2022 23:40 ]

Pagina: 1