Skip to content

Pycharm & Docker

Verschoben Linux
1 1 332
  • 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
  • Debian Bookworm 12.11 released

    Linux linux debian
    1
    0 Stimmen
    1 Beiträge
    218 Aufrufe
    Niemand hat geantwortet
  • Pycharm - AI Assistant

    Linux pycharm linux
    1
    2
    0 Stimmen
    1 Beiträge
    319 Aufrufe
    Niemand hat geantwortet
  • Firefox - Cookie Banner blocken

    Linux firefox linux
    1
    0 Stimmen
    1 Beiträge
    222 Aufrufe
    Niemand hat geantwortet
  • NAS 2023 - Software Teil 2

    Angeheftet Verschoben Linux nas linux
    1
    4
    0 Stimmen
    1 Beiträge
    259 Aufrufe
    Niemand hat geantwortet
  • Mainline 5.11.x

    Images linux rockpro64
    1
    0 Stimmen
    1 Beiträge
    289 Aufrufe
    Niemand hat geantwortet
  • ClusterSSH

    Angeheftet Linux linux
    4
    1
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    FrankMF
    Mal wieder lange dran rumgefummelt, bis es passte. I have figured out how to use any font in xterm. So for the case of the mentioned Inconsolata font size 14, the following works: Add these 2 lines into ~/.Xresources (create it if it does not exist) XTermfaceName: Inconsolata XTermfaceSize: 14 Then, tell xterm to use this file: export XENVIRONMENT="${HOME}/.Xresources" Preferably add this export into .bashrc, so that it is persistent. comment out the font settings in ~/.clusterssh/config, if it exists: # terminal_font=6x13 Quelle: https://unix.stackexchange.com/questions/230106/cluster-ssh-specify-terminal-font
  • [HOWTO] Verschlüsseltes NAS aufsetzen

    Verschoben ROCKPro64 howto linux rockpro64
    12
    0 Stimmen
    12 Beiträge
    3k Aufrufe
    FrankMF
    Da btrfs bei mir ja nicht so der Bringer war, Fehler im Image vom Kamil?, Fehler in btrfs? Ich weiß es nicht, also weg damit! Da ich das NAS noch richtig produktiv genutzt hatte, waren die Daten schnell gesichert. Danach das NAS neugestartet, nun sind die beiden Platten nicht mehr gemountet und wir können damit arbeiten. ACHTUNG! Ich bitte wie immer darum, das Gehirn ab hier einzuschalten! Sonst droht Datenverlust! Aus Sicherheitsgründen gebe ich hier die Laufwerke so an = sdX1 Das X bitte entsprechend austauschen! Die beiden Platten mit sudo fdisk /dev/sdX neu einrichten. Alte Partition weg, neu einrichten usw. Im Detail gehe ich hier jetzt nicht drauf ein. Ich gehe davon aus, das das bekannt ist. Der Plan raid_pool0 = sdX1 = /dev/mapper/raid_pool0 raid_pool1 = sdX1 = /dev/mapper/raid_pool1 Verschlüsseln sudo cryptsetup --key-size 512 --hash sha256 --iter-time 5000 --use-random luksFormat /dev/sdX1 sudo cryptsetup --key-size 512 --hash sha256 --iter-time 5000 --use-random luksFormat /dev/sdX1 Platten entschlüsseln sudo cryptsetup open /dev/sdX1 raid_pool0 sudo cryptsetup open /dev/sdX1 raid_pool1 RAID1 anlegen sudo mdadm --create /dev/md0 --auto md --level=1 --raid-devices=2 /dev/mapper/raid_pool0 /dev/mapper/raid_pool1 sudo mkfs.ext4 /dev/md0 Script zum Entschlüsseln und Mounten crypt.sh #!/bin/bash ###############################################################################$ # Autor: Frank Mankel # Verschlüsseltes Raid1 einbinden! # # Hardware: # ROCKPro64v2.1 # PCIe SATA Karte # 2St. 2,5 Zoll HDD Platten a 2TB # # Software: # bionic-minimal 0.7.9 # Kontakt: frank.mankel@gmail.com # ###############################################################################$ #Passwort abfragen echo "Passwort eingeben!" read -s password echo "Bitte warten......" #Passwörter abfragen echo -n $password | cryptsetup open /dev/sdX1 raid_pool0 -d - echo -n $password | cryptsetup open /dev/sdX1 raid_pool1 -d - #Raid1 mounten mount /dev/md0 /mnt/raid echo "Laufwerke erfolgreich gemountet!" Bis jetzt sieht das Raid ok aus, ich werde das die nächsten Tage mal ein wenig im Auge behalten. [ 82.430293] device-mapper: uevent: version 1.0.3 [ 82.430430] device-mapper: ioctl: 4.39.0-ioctl (2018-04-03) initialised: dm-devel@redhat.com [ 108.196397] md/raid1:md0: not clean -- starting background reconstruction [ 108.196401] md/raid1:md0: active with 2 out of 2 mirrors [ 108.240395] md0: detected capacity change from 0 to 2000260497408 [ 110.076860] md: resync of RAID array md0 [ 110.385099] EXT4-fs (md0): recovery complete [ 110.431715] EXT4-fs (md0): mounted filesystem with ordered data mode. Opts: (null) [57744.301662] md: md0: resync done.
  • SSH Login ohne Passwort

    Angeheftet Linux linux
    4
    0 Stimmen
    4 Beiträge
    2k Aufrufe
    FrankMF
    Wie ihr ja wisst, benutze ich das Forum hier auch gerne als Notizbuch Also mal wieder was hier notieren. Mein Windows Systemadmin sagte mir heute, das es auch folgendes gibt # ssh-keygen -t ed25519 Generating public/private ed25519 key pair. Enter file in which to save the key (/root/.ssh/id_ed25519): /tmp/ed Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /tmp/ed Your public key has been saved in /tmp/ed.pub The key fingerprint is: SHA256:D33HCTW7Dy0p5kQdFTkPudx1PQh0EHFgkBvxy8KwhGM root@frank-ms7c92 The key's randomart image is: +--[ED25519 256]--+ | o=O*o=+=| | . oo o+oB+| | E o o.o.o+*| | . o +o...oo=o| | .So.o= O .| | o.= o + | | . . .| | | | | +----[SHA256]-----+ Der Key liegt nur in /tmp kopieren lohnt also nicht Ob das jetzt die Zukunft ist, kann ich nicht beantworten. Ich wollte es aber hier mal festhalten, weil es wohl mittlerweile auch von vielen Projekten benutzt wird. https://en.wikipedia.org/wiki/Ssh-keygen