chore: remove development docker (#677)

The docker container for development moved into its own, dedicated repository. It can be found here: https://github.com/mainsail-crew/virtual-klipper-printer

Signed-off-by: Dominik Willner <th33xitus@gmail.com>
This commit is contained in:
th33xitus 2022-02-26 13:23:32 +01:00 committed by GitHub
parent c4e68594cd
commit efb0167f53
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 0 additions and 383 deletions

8
.gitignore vendored
View File

@ -12,14 +12,6 @@ temp
.idea
package-lock.json
*.local
docker/gcode
docker/logs
docker/moonraker
docker/config/**/*
docker/config/*.cfg
docker/config/*.conf
docker/config/.mainsail.json
docker/config/.theme
.env
cypress/videos/

View File

@ -1,40 +0,0 @@
version: '3.8'
services:
api:
build:
context: ./docker
dockerfile: api/Dockerfile
image: mainsail-stack-api/1
volumes:
- ./docker/config:/home/node/klipper_config
- ./docker/logs:/home/node/klipper_logs
- ./docker/gcode:/home/node/gcode
- ./docker/config/moonraker:/home/node/.moonraker_database
container_name: mainsail-stack-api
ports:
- '7125:7125'
networks:
- dev_net
npm:
build:
context: .
dockerfile: docker/Dockerfile
image: mainsail-stack-npm/1
env_file:
- .env
volumes:
# Do not bind '.' as volume. As we want the node modules being installed in the container
- ./src/:/home/node/mainsail/src
- ./public/:/home/node/mainsail/public
- ./vite.config.ts:/home/node/mainsail/vite.config.ts
- ./index.html:/home/node/mainsail/index.html
container_name: mainsail-stack-npm
ports:
- '8080:8080'
depends_on:
- api
networks:
- dev_net
networks:
dev_net:
driver: bridge

View File

@ -1,22 +0,0 @@
FROM node:16-buster AS base
EXPOSE 8080
RUN apt-get update
RUN apt-get install -y zip
COPY docker/start-npm /usr/local/bin/start-npm
RUN chmod +x /usr/local/bin/start-npm
USER node
WORKDIR /home/node/mainsail
COPY package.json package.json
COPY package-lock.json package-lock.json
RUN npm ci
COPY . .
ENTRYPOINT ["start-npm"]

View File

@ -1,65 +0,0 @@
FROM python:3-slim-buster AS base
RUN groupadd --force -g 1000 node
RUN useradd -ms /bin/bash --no-user-group -g 1000 -u 1000 node
RUN apt-get update
RUN apt-get install -y sudo wget cmake swig git virtualenv python-dev libffi-dev \
build-essential libncurses-dev libusb-dev avrdude gcc-avr binutils-avr avr-libc \
dfu-util libnewlib-arm-none-eabi gcc-arm-none-eabi binutils-arm-none-eabi libusb-1.0
RUN mkdir /src
WORKDIR /src
RUN wget http://download.savannah.nongnu.org/releases/simulavr/libsim_1.1.0_amd64.deb
RUN apt install /src/libsim_1.1.0_amd64.deb
RUN cat /etc/passwd
RUN echo 'node ALL=(ALL:ALL) NOPASSWD: ALL' > /etc/sudoers.d/node && \
chown node:node -R ./
#if systemd is installed, we need to backup the current systemctl command
#RUN mv /bin/systemctl /bin/systemctl.bak
RUN ln -s /bin/true /bin/systemctl
USER node
WORKDIR /home/node
RUN git clone https://github.com/klipper3d/klipper
WORKDIR /home/node/klipper
COPY api/simulavr.config /home/node/klipper/.config
RUN make
RUN cp /home/node/klipper/out/klipper.elf /home/node/klipper/simulavr.elf
RUN rm /home/node/klipper/.config
COPY api/linux.config /home/node/klipper/.config
RUN make clean
RUN make
RUN chmod +x /home/node/klipper/scripts/install-debian.sh
RUN /home/node/klipper/scripts/install-debian.sh
WORKDIR /home/node
RUN git clone https://github.com/Arksine/moonraker
WORKDIR /home/node/moonraker
RUN sed -E 's/check_klipper\(\)/check_klipper() { return 0; }\nold()/' /home/node/moonraker/scripts/install-moonraker.sh > /home/node/moonraker/scripts/install-moonraker2.sh
RUN chmod +x /home/node/moonraker/scripts/install-moonraker2.sh
RUN /home/node/moonraker/scripts/install-moonraker2.sh
#restore backed up systemctl command
#RUN sudo mv /bin/systemctl.bak /bin/systemctl
WORKDIR /home/node/
RUN git clone https://git.savannah.nongnu.org/git/simulavr.git
WORKDIR /home/node/simulavr
RUN make python
RUN make build -j8
USER root
RUN rm /bin/systemctl
RUN apt-get -y install supervisor
RUN ln -s /usr/bin/supervisorctl /bin/systemctl
RUN mkdir -p /var/log/supervisor
COPY api/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
COPY api/start-api /bin/start-api
RUN chmod +x /bin/start-api
ENTRYPOINT ["/bin/start-api"]

View File

@ -1,25 +0,0 @@
CONFIG_LOW_LEVEL_OPTIONS=y
# CONFIG_MACH_AVR is not set
# CONFIG_MACH_ATSAM is not set
# CONFIG_MACH_ATSAMD is not set
# CONFIG_MACH_LPC176X is not set
# CONFIG_MACH_STM32 is not set
# CONFIG_MACH_PRU is not set
CONFIG_MACH_LINUX=y
# CONFIG_MACH_SIMU is not set
CONFIG_STEP_DELAY=2
CONFIG_BOARD_DIRECTORY="linux"
CONFIG_CLOCK_FREQ=50000000
CONFIG_LINUX_SELECT=y
CONFIG_USB_VENDOR_ID=0x1d50
CONFIG_USB_DEVICE_ID=0x614e
CONFIG_USB_SERIAL_NUMBER="12345"
# CONFIG_CUSTOM_STEP_DELAY is not set
CONFIG_INITIAL_PINS=""
CONFIG_HAVE_GPIO=y
CONFIG_HAVE_GPIO_ADC=y
CONFIG_HAVE_GPIO_SPI=y
CONFIG_HAVE_GPIO_I2C=y
CONFIG_HAVE_GPIO_HARD_PWM=y
CONFIG_HAVE_GPIO_BITBANGING=y
CONFIG_INLINE_STEPPER_HACK=y

View File

@ -1,50 +0,0 @@
CONFIG_LOW_LEVEL_OPTIONS=y
CONFIG_MACH_AVR=y
# CONFIG_MACH_ATSAM is not set
# CONFIG_MACH_ATSAMD is not set
# CONFIG_MACH_LPC176X is not set
# CONFIG_MACH_STM32 is not set
# CONFIG_MACH_PRU is not set
# CONFIG_MACH_LINUX is not set
# CONFIG_MACH_SIMU is not set
CONFIG_AVR_SELECT=y
CONFIG_STEP_DELAY=-1
CONFIG_BOARD_DIRECTORY="avr"
# CONFIG_MACH_atmega2560 is not set
# CONFIG_MACH_atmega1280 is not set
# CONFIG_MACH_at90usb1286 is not set
# CONFIG_MACH_at90usb646 is not set
# CONFIG_MACH_atmega32u4 is not set
# CONFIG_MACH_atmega1284p is not set
CONFIG_MACH_atmega644p=y
# CONFIG_MACH_atmega328p is not set
# CONFIG_MACH_atmega328 is not set
# CONFIG_MACH_atmega168 is not set
CONFIG_MCU="atmega644p"
CONFIG_AVRDUDE_PROTOCOL="arduino"
# CONFIG_AVR_FREQ_16000000 is not set
CONFIG_AVR_FREQ_20000000=y
# CONFIG_AVR_FREQ_8000000 is not set
CONFIG_CLOCK_FREQ=20000000
CONFIG_AVR_CLKPR=-1
CONFIG_AVR_STACK_SIZE=256
CONFIG_AVR_WATCHDOG=y
CONFIG_SERIAL=y
CONFIG_AVR_SERIAL_UART0=y
# CONFIG_AVR_SERIAL_UART1 is not set
CONFIG_SERIAL_PORT=0
CONFIG_SIMULAVR=y
CONFIG_SERIAL_BAUD=250000
CONFIG_USB_VENDOR_ID=0x1d50
CONFIG_USB_DEVICE_ID=0x614e
CONFIG_USB_SERIAL_NUMBER="12345"
# CONFIG_CUSTOM_STEP_DELAY is not set
CONFIG_INITIAL_PINS=""
CONFIG_HAVE_GPIO=y
CONFIG_HAVE_GPIO_ADC=y
CONFIG_HAVE_GPIO_SPI=y
CONFIG_HAVE_GPIO_I2C=y
CONFIG_HAVE_GPIO_HARD_PWM=y
CONFIG_HAVE_GPIO_BITBANGING=y
CONFIG_HAVE_STRICT_TIMING=y
CONFIG_INLINE_STEPPER_HACK=y

View File

@ -1,3 +0,0 @@
#!/bin/bash
chown -hR node:node /home/node/klipper_logs
/usr/bin/supervisord

View File

@ -1,38 +0,0 @@
[supervisord]
#logfile=/tmp/supervisord.log ; (main log file;default $CWD/supervisord.log)
logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB)
logfile_backups=10 ; (num of main logfile rotation backups;default 10)
loglevel=info ; (log level;default info; others: debug,warn,trace)
pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
nodaemon=true ; (start in foreground if true;default false)
minfds=1024 ; (min. avail startup file descriptors;default 1024)
minprocs=200 ; (min. avail process descriptors;default 200)
[program:simulavr]
command=bash -c 'sleep 10 && /home/node/klipper/scripts/avrsim.py -m atmega644 -s 20000000 -b 250000 /home/node/klipper/simulavr.elf'
environment=PYTHONPATH=/home/node/simulavr/build/pysimulavr/
user=node
process_name=simulavr
directory=/home/node
autostart=true
autorestart=true
redirect_stderr=true
[program:klipper]
command=/home/node/klippy-env/bin/python /home/node/klipper/klippy/klippy.py /home/node/klipper_config/printer.cfg -l /home/node/klipper_logs/klippy.log -a /tmp/klippy_uds
user=node
process_name=klipper
directory=/home/node
autostart=true
autorestart=true
redirect_stderr=true
[program:moonraker]
command=/home/node/moonraker-env/bin/python /home/node/moonraker/moonraker/moonraker.py -l /home/node/klipper_logs/moonraker.log -c /home/node/klipper_config/moonraker.conf
user=node
process_name=moonraker
directory=/home/node
autostart=true
autorestart=true
redirect_stderr=true

View File

@ -1,15 +0,0 @@
# moonraker.conf
[server]
host: 0.0.0.0
port: 7125
enable_debug_logging: True
config_path: /home/node/klipper_config/
database_path: /home/node/.moonraker_database
[authorization]
enabled: True
trusted_clients:
0.0.0.0/0
cors_domains:
*

View File

@ -1,112 +0,0 @@
[virtual_sdcard]
path: ~/gcode
[pause_resume]
[display_status]
[mcu]
serial: /tmp/pseudoserial
restart_method: arduino
baud: 250000
[stepper_x]
step_pin: PD7
dir_pin: !PC5
enable_pin: !PD6
microsteps: 16
rotation_distance: 40
endstop_pin: ^PC2
position_endstop: 0
position_max: 235
homing_speed: 50
homing_retract_dist: 0
[stepper_y]
step_pin: PC6
dir_pin: !PC7
enable_pin: !PD6
microsteps: 16
rotation_distance: 40
endstop_pin: ^PC3
position_endstop: 0
position_max: 235
homing_speed: 50
homing_retract_dist: 0
[stepper_z]
step_pin: PB3
dir_pin: PB2
enable_pin: !PA5
microsteps: 16
rotation_distance: 8
endstop_pin: ^PC4
position_endstop: 0.0
position_max: 250
homing_retract_dist: 0
[extruder]
max_extrude_only_distance: 100.0
step_pin: PB1
dir_pin: !PB0
enable_pin: !PD6
microsteps: 16
rotation_distance: 33.683
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PD5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PA7
control: watermark
min_temp: 0
max_temp: 250
min_extrude_temp: 50
[heater_bed]
heater_pin: PD4
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PA6
control: watermark
min_temp: 0
max_temp: 130
[fan]
pin: PB4
[heater_fan nozzle_fan]
pin: PB5
off_below: 0.0
shutdown_speed: 1.0
max_power: 1.0
[controller_fan mcu_fan]
pin: PB6
off_below: 0.2
shutdown_speed: 1.0
max_power: 1.0
[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 3000
max_z_velocity: 5
max_z_accel: 100
#[display]
#lcd_type: st7920
#cs_pin: PA3
#sclk_pin: PA1
#sid_pin: PC1
#encoder_pins: ^PD2, ^PD3
#click_pin: ^!PC0
# The print bed can move so far to the front, that the nozzle can reach the
# plastic cover of the print bed heater cable (only when the bed is moved by
# hand). By homing the Y axis before the X axis, it is ensured the nozzle will
# not melt through the plastic part.
# BEWARE: You will lose the ability to home axes individually. The printer will
# always home all axes for every G28 command.
#[homing_override]
#gcode:
# G28 Y0
# G28 X0
# G28 Z0

View File

@ -1,5 +0,0 @@
#!/usr/bin/env bash
if [ ! -d 'node_modules' ]; then
npm ci
fi
npm run serve -- --host