Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Квас

Pages: [1] 2 3 ... 105
1
У node.js, console.log пишет в стандартный вывод, то есть тоже, можно сказать, в консоль. Хитрость моего примера в том, что она пишет в стандартный вывод процесса в контейнере, но этот же текст доступен и хосту. Также в контейнере можно запустить интерактивную консольную программу, и работать с ней в терминале хоста. Даже графические приложения запускал в контейнере, чтобы они открывались в окнах хоста.
  • 0
  • 0

2
Я VirtualBox иногда юзал - громоздкая графическая программа. Графическая - значит, плохо интегрируется. А с докером можно так:

Печатаю "hello world" из node.js:
Code: [Select]
$ docker run --rm node -e 'console.log("hello world")'
hello world

Переворачиваю строку на лиспе:
Code: [Select]
$ echo 'hello world' | docker run -i --rm clfoundation/sbcl sbcl --noinform --quit --eval '(write-line (reverse (read-line)))'
dlrow olleh
  • 0
  • 0

3
Вот пример. У вас есть сайт, и вы хотите раздавать его nginx-ом.

Для примера, сайт будет такой: в папке mysite файл index.html
Code: [Select]
<!DOCTYPE html>
<html>
    <head>
        <title>Example</title>
    </head>
    <body>
        <p>This is an example of a simple HTML page with one paragraph.</p>
    </body>
</html>

Запускаете контейнер nginx:
Code: [Select]
docker run -v /path/to/mysite:/usr/share/nginx/html:ro -p 8080:80 nginx
Можно открыть localhost:8080 и посмотреть.

-v - сокращение от --volume. Эта опция монтирует директорию хоста в контейнер. nginx предполагает, что раздаваемые файлы лежат в директории /usr/share/nginx/html, и мы "подсовываем" туда локальную директорию.

Опция -p перенаправляет порт. nginx по умолчанию раздаёт файлы на порту 80. Когда он используется в контейнере, это порт 80 контейнера. Опция -p 8080:80 перенаправляет запросы на порт 8080 локалхоста на порт 80 контейнера.

Так мы используем nginx, не устанавливая его и не конфигурируя.

Но, конечно, можно запускать nginx и с кастомной конфигурацией, скопировав или примонтировав локальный конфиг-файл в контейнер.
  • 1
  • 0

4
Это вроде кучи виртуальных машин, но гораздо легковеснее. С виндоусом в контексте докера никогда не работал, не знаю деталей. Контейнеры с линуксом хорошо работают на линуксе. :)
  • 1
  • 0

5
Да, это для приложений, а не для данных. Вместо того, чтобы ставить приложения непосредственно в свою ОС, можно их ставить в их собственные ОС, работающие в контейнерах. И на hub.docker.com есть большое количество готовых образов с установленным софтом. Преимущества:
- контроль над версиями
- легко воспроизводимо
- упрощается установка и конфигурирование софта
- основная ОС не забивается хламом

Например,
- контейнер 1: бэкенд
- контейнер 2: postgresql
- контейнер 3: pgadmin
Можете для практики попробовать реализовать такую конфигурацию. Для усложнения можно добавить фронтенд:
- контейнер 4: дев-сервер фронтенда
- контейнер 5: nginx, за которым работают бэкенд и фронтенд, чтобы не было ошибок CORS.

Контейнеры общаются друг с другом по внутридокерной сети. Поэтому, например, для postgresql не нужно конфигурировать порт. Он может использовать порт по умолчанию, потому что это не порт компьютера-хоста, а порт контейнера.
  • 1
  • 0

6
а если бы порицали бы не его лично, а неких коллективных сферических “rusos” в вакууме, то у Иванова сразу бы отлегло на сердце? Спрашиваю для друга ;D

Ну наверно, ибо какое к нему отношение имеют сферические в вакууме? Пример из жизни: жил я в районе, заслуженный имидж жителей которого - шпана, наркоманы, алкаши. Но мне не стыдно за них, и я их также порицал. Проживание в одном районе создаёт слабые "узы" между людьми, а принадлежность к одной национальности - вообще ничто.
  • 1
  • 0

7
Если Иванова, к которому персонально претензий нет, стали бы "порицать" только на основании национальности, это называется дискриминация.
  • 2
  • 0

8
Разве это фреймворки? Фреймворк - это ангуляр, например! Задаёт стиль написания приложений и содержит набор инструментов.

А это - библиотеки какие-то. Пример из гугла: https://github.com/liabru/matter-js/blob/master/examples/mixed.js Код как код, функции вызываются одна за другой.
  • 0
  • 0

9
Компьютеры и интернет / Re: Python
« on: 09 April 2026, 15:11:26 »
Я имел в виду далеко не только питон а вообще языки программирования.

Я тоже про языки вообще. Моя точка зрения, что на работе лучше статическая типизация построже, а на отдыхе - то, что доставляет наибольшее удовольствие.
  • 0
  • 0

10
Компьютеры и интернет / Re: Python
« on: 09 April 2026, 15:09:43 »
А как связаны автодополнение и статическая типизация? В DevTools и IDLE тоже автодополнение методов через точку работает, хотя в JS и Python никакой типизации нет.

Вопрос в доступной информации. Например, в DevTools есть объект в рантайме, и конечно, DevTools про него знает абсолютно всё. Или типы можно выводить. Но при статической типизации такой информации обычно больше. Например, один раз работал с кодом на JS, в котором было много функций типа payload => ... . Конечно, в теле такой функции автодополнение не работает. И это полбеды, потому что я сам, так же как алгоритм автодополнения, не имел возможности понять, что это за payload в каждом конкретном случае.
  • 0
  • 0

11
Компьютеры и интернет / Re: Python
« on: 08 April 2026, 15:26:52 »
но почему???

В общем, у меня сложилось такое впечатление. Типизация выступает минимальной документацией; легче модифицировать код, например, если требуется превратить
Code: [Select]
interface I {
  foo;
  bar;
}
в
Code: [Select]
interface I {
  foo;
  bar;
  baz;
}
автодополнение работает, особенно при вызове методов через точку, что, в частности, улучшает discoverability. Если в каких-то ситуациях статическая типизация оказывается ограничительной, то на работе, может быть, это даже хорошо.

Я помню как некоторые знакомые лет пять назад утверждали что без статической типизации вообще делать нечего. А сейчас сидят и молча учат питон  :)

Mypy существует уже давно.
  • 1
  • 0

12
Компьютеры и интернет / Re: Python
« on: 06 April 2026, 12:45:10 »
Меня интересует другое: должен ли это быть язык со строгой типизацией? :what?

Думаю, для работы - лучше со строгой типизацией!
  • 1
  • 0

13
Компьютеры и интернет / Re: Python
« on: 06 April 2026, 12:43:02 »
Я делал прямой запрос, чат ответил, что его код написан на Питоне. :yes:

Инфраструктура какая-то - почему бы и не на питоне. Я имею в виду, что "думает" он не питоном.
  • 2
  • 0

14
Компьютеры и интернет / Re: Python
« on: 05 April 2026, 23:57:01 »
Так чат GPT работает на Питоне. :)

Не, он работает на нейронке. А на чём крутится нейронка - неважно.
  • 0
  • 0

15
Компьютеры и интернет / Re: Python
« on: 02 April 2026, 19:46:20 »
Специалист по ML точно не получится. Но и с Java тоже не получится.

Выиграйте какие-нибудь состязания на kaggle - глядишь, работодателя впечатлит.  :)
  • 0
  • 0

Pages: [1] 2 3 ... 105