Skip to content

Pycharm & Docker

Verschoben Linux
  • Mal die letzten Tage viel mit Docker rumgespielt. Da gibt es in Pycharm auch eine tolle Integration für.

    Strg & Alt & S

    dann kommt man in die Settings von Pycharm, oder über das Menü File -> Settings. Als erstes das Docker Plugin installieren.

    35fcc4b0-93e6-4c95-8050-02135084866c-grafik.png

    Grundvoraussetzung ist natürlich, das Docker auf Eurer Kiste installiert ist.

       ~  docker version                                                                                               ✔ 
    Client:
     Version:           23.0.1
     API version:       1.42
     Go version:        go1.20
     Git commit:        a5ee5b1dfc
     Built:             Sat Feb 11 13:58:04 2023
     OS/Arch:           linux/amd64
     Context:           default
    
    Server:
     Engine:
      Version:          23.0.1
      API version:      1.42 (minimum version 1.12)
      Go version:       go1.20
      Git commit:       bc3805a0a0
      Built:            Sat Feb 11 13:58:04 2023
      OS/Arch:          linux/amd64
      Experimental:     false
     containerd:
      Version:          v1.6.16
      GitCommit:        31aa4358a36870b21a992d3ad2bef29e1d693bec.m
     runc:
      Version:          1.1.4
      GitCommit:        
     docker-init:
      Version:          0.19.0
      GitCommit:        de40ad0
    

    Danach die Settings vom Docker Plugin. Findet man unter Build, Execution, Deployment

    7e4532c5-fb73-4964-9f98-5b37f20760d3-grafik.png

    Wichtig ist der Text Connection Successful

    55649a61-7556-4b0c-85b2-3efaf12633a9-grafik.png

    Nun kann Pycharm mit dem Docker Images bauen und starten. Dazu legt man ein neues File mit dem Namen dockerfile an. Hier mal eines aus meinem aktuellen Projekt.

    #WORKDIR /home/frankm/PycharmProjects/scraping/
    FROM python:3.10
    # Or any preferred Python version.
    WORKDIR /root
    ADD main.py .
    ADD stocks_list.json .
    ADD buy_stocks_list.json .
    RUN apt update && apt upgrade -y
    RUN apt install -y locales
    RUN sed -i -e 's/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/' /etc/locale.gen && \
        dpkg-reconfigure --frontend=noninteractive locales && \
        update-locale LANG=de_DE.UTF-8
    RUN pip install --upgrade pip
    RUN pip install requests beautifulsoup4 pywebio pywebio_battery yfinance pandas pyecharts
    CMD python main.py
    # Or enter the name of your unique directory and parameter set.
    

    Das ist, für Einsteiger erklärt, der Bauplan des Images welches man als Docker Container laufen lassen möchte.

    Man benutzt das Image python:3.10 und wendet darauf eine Reihe von Befehlen an und wenn alles funktioniert hat, startet er am Ende den Docker Container 🙂

    Hier ein gekürzter Auszug aus dem Build Log.

    Step 9/11 : RUN pip install --upgrade pip
     ---> Using cache
     ---> 411c6c0e2b46
    Step 10/11 : RUN pip install requests beautifulsoup4 pywebio pywebio_battery yfinance pandas pyecharts
     ---> Using cache
     ---> 1fc55daee1ed
    Step 11/11 : CMD python main.py
     ---> Using cache
     ---> 522420930488
    
    Successfully built 522420930488
    Successfully tagged latest:latest
    Existing container found: 8b1ac1356aafb6574ea7e81f951e6fdd9c0ba05a9f4031d84492eb74309f92e1, removing…
    Creating container…
    Container Id: 9edb9e30fab209f1c9f704507f20b284d2d15b6eff38b65a8f24b5e3b347e4c1
    Container name: 'python-portfolio'
    Starting container 'python-portfolio'
    'python-portfolio Dockerfile: dockerfile' has been deployed successfully.
    

    Hier kann man sehen, das der Docker Container erfolgreich gestartet wurde.

    Oben rechts in Pycharm findet man das hier

    092cb953-aabf-4e0a-bad3-ac71ab1d4ddc-grafik.png

    Dort kann man auch Umschalter, zwischen Python & Docker. Sehr sinnvoll, wenn man wie ich nicht sattelfest in Python ist und mal richtig rumprobiert. Macht ja dann nicht wirklich Sinn, jedes mal den Docker Container zu deployen.

    Viel Spaß beim Dockern 😉

  • FrankMF FrankM verschob dieses Thema von Privat am

  • 0 Stimmen
    1 Beiträge
    83 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    4 Beiträge
    718 Aufrufe
    FrankMF

    Ich parke das mal hier, damit ich das nicht noch mal vergesse. Hat mich eben mal wieder eine Stunde gekostet 😞

    /etc/ansible/ansible.cfg

    [defaults] host_key_checking = False

    Edit -> https://linux-nerds.org/topic/1493/ansible-host_key_checking

  • Docker & Redis Datenbank

    Verschoben Linux
    2
    0 Stimmen
    2 Beiträge
    156 Aufrufe
    FrankMF

    @FrankM sagte in Docker & Redis Datenbank:

    save 60 1
    #save 900 1
    save 300 10
    save 60 10000

    Hier kann man auch noch schön sehen, wie ich gekämpft habe, bis ich mal eine dump.rdb gesehen habe. Auch irgendwie logisch, das ich nie eine gesehen hatte, wenn man weiß das

    save 900 1

    bedeutet, das er alle 900 Sekunden speichert, wenn mindestens eine Änderung vorhanden ist. Das kann dann schon was dauern. Ich habe das dann mal verkürzt, damit ich schneller ein Ergebnis habe.

    save 60 1

    Das brachte mich dann dem Ziel näher. Danach konnte ich die dump.rdb auch finden.

    Bitte keine Redis DB ohne Passwort laufen lassen!
  • Docker - Portainer

    Linux
    3
    0 Stimmen
    3 Beiträge
    613 Aufrufe
    FrankMF

    Dann grabe ich das mal wieder aus 😉

    Bedingt durch den Wegfall meines Proxmox, musste ich mir Gedanken darüber machen, wie ein paar Dienste auch weiterhin laufen sollen. Um mal die zwei wichtigsten zu nennen.

    checkmk DokuWiki

    Diese sollen später, wenn der zweite NanoPi R5S aus China da ist, dort laufen. Da der aber mit der Schneckenpost kommt, kann man ja in der Zwischenzeit mal wieder mit Docker spielen.

    Ich erinnerte mich daran, das checkmk eine sehr gute Anleitung hat, so das ich das mal wieder ausprobierte. Klappte einwandfrei. Dann erinnerte mich an Portainer und dachte mir, das probiere ich mal wieder aus 🙂

    1d2dc9b3-ad71-45c5-b552-72c88a1bf773-grafik.png

    Ich hatte übrigens die Endpoints gesucht und nicht gefunden, die heißen jetzt Environments. Auf dem Bild ist noch keiner eingerichtet.

    4bdbf196-1b36-4e65-94d0-0e56daa473bf-grafik.png

    Irgendwie ist das wirklich richtig gute Software. Ich mag den Portainer und auch als selbst ausgebildeter ITler 😉 kommt man damit sehr schnell ganz gut zurecht.

    Ja, man kann die ganzen Docker Befehle auch über die Konsole eingeben, was ich normalerweise auch mit ganz vielen Dingen mache, aber das macht hier einfach Spaß. Man hat auch schnell einen guten Überblick was wo läuft usw.

    Wer so was sucht, einfach mal ausprobieren. Klare Empfehlung von mir.

  • Nextcloud Talk

    Nextcloud
    5
    0 Stimmen
    5 Beiträge
    772 Aufrufe
    FrankMF

    All I needed to do was setting the permissions to 744 for the archive directory and the symlinks resolved correctly after a reboot of coturn

    My turnserver installation on Debian runs as the user turnserver and not as root, nor is the user turnserver in any group owning the letsencrypt directory.
    If your turnserver does run as root, it should be fine just adding execute permissions.

    I hope this helps some of you.
    Quelle: https://help.nextcloud.com/t/lets-encrypt-symlink-breaks-coturn-configuration/70166

    Was zum Testen die Tage....

  • checkmk - Dockerinstallation

    Verschoben checkmk
    9
    0 Stimmen
    9 Beiträge
    977 Aufrufe
    FrankMF

    Und noch was Wichtiges.

    6777da6e-3b4f-41b9-bf6e-26496ae67cd8-grafik.png

    Damit sichert man den Datenaustausch ab.

    Kapitel 7.4. Inbuilt encryption

    Den Ordner findet man hier -> /etc/check_mk/encryption.cfg

  • Linux Befehle - ls & tail

    Linux
    1
    0 Stimmen
    1 Beiträge
    330 Aufrufe
    Niemand hat geantwortet
  • Debian Buster 10 Release

    Linux
    3
    0 Stimmen
    3 Beiträge
    378 Aufrufe
    FrankMF

    Da man ja beim Login auswählen kann, mit was die Session startet, war ich doch jetzt etwas neugierig was überhaupt läuft.

    IMG_20190707_092217.jpg

    frank@debian:~$ echo $WAYLAND_DISPLAY frank@debian:~$ loginctl SESSION UID USER SEAT TTY 7 1000 frank seat0 tty2 c1 116 Debian-gdm seat0 tty1 2 sessions listed. frank@debian:~$ loginctl show-session c1 -p Type Type=x11 frank@debian:~$ loginctl show-session c1 Id=c1 User=116 Name=Debian-gdm Timestamp=Sat 2019-07-06 22:43:34 CEST TimestampMonotonic=30094837 VTNr=1 Seat=seat0 TTY=tty1 Remote=no Service=gdm-launch-environment Scope=session-c1.scope Leader=1015 Audit=4294967295 Type=x11 Class=greeter Active=no State=online IdleHint=yes IdleSinceHint=1562446130937731 IdleSinceHintMonotonic=346278596 LockedHint=yes

    Die Installation der Nvidia Treiber macht da wohl einen x11 Desktop raus. Aber auch nicht weiter schlimm, der Wayland lief ja hier überhaupt nicht. Würde mich aber über interessante Links zum Thema freuen 😉