Блог

Остановка и удаление всех контейнеров (containers) и образов (images) в Docker

Остановить все контейнеры

docker stop $(docker ps -a -q)

Удалить все контейнеры

docker rm $(docker ps -a -q)

Удалить все образы

docker rmi $(docker images -q)

Все сразу (остановить и удалить все контейнеры и образы)

docker stop $(docker ps -a -q); docker rm $(docker ps -a -q); docker rmi $(docker images -q)
copypaste docker

Установка docker и docker-compose в одну строку

Установка docker и docker-compose в одну строку на Linux (должен быть установлен curl).

sudo apt-get update; sudo apt-get install ca-certificates curl gnupg; sudo install -m 0755 -d /etc/apt/keyrings; curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg; sudo chmod a+r /etc/apt/keyrings/docker.gpg; echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null; sudo apt-get update; sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Проверяем:

sudo docker run hello-world

Старый скрипт:

apt update; apt upgrade -y; apt install -y curl; curl -sSL https://get.docker.com/ | sh; curl -L https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

bash copypaste docker linux

Переехал на новый движок

Перевел сайт на новый движок - hexo. Посмотрим, как он себя покажет, пока все нравится. Планирую снова размещаться на гитхабе.

Осталось перенести прошлые статьи :) В общем, есть надежда, что сайт снова заработает и кому-то будет приносить пользу.

сайты

Игра Футбол головами на двоих

<object type=”application/x-shockwave-flash” data=”/upload/games/SportHeadsFootball.swf” width=”100%” height=”100%” style=”height: 600px;” id=”flash-container” style=”visibility: visible;”></object>

игры

Поиск недостающего числа в массиве

Дан массив из N чисел. В нём находятся случайные числа из диапазона [0..N]. Все числа отличаются. При помощи одного цикла нужно найти, какого числа из диапазона [0..N] не хватает в массиве.

Логика следующая:

Мы должны получить два числа - сумму всех чисел, которые должны быть в массиве, и сумму чисел, которые есть в массиве. Затем, просто вычитаем из первой сумму вторую и получаем число, которого нет.

Код на Python:

В данном коде сделан генератор массива (condition) и решение (solution).

#!/usr/bin/python

# condition
import random
N = 10
source_array = list(range(0, N+1))
random.shuffle(source_array)
source_array.pop()
print source_array

# solution
current_sum = 0
full_sum = 0
inc_value = 1
for x in source_array:
    current_sum += x
    full_sum += inc_value
    inc_value += 1
found_value = full_sum - current_sum
print "Found value " + str(found_value)
python алгоритмы

Как установить Jekyll?

Jekyll - это генератор статических сайтов. Его удобно использовать для статичных блогов, чтобы потом их можно было разместить, например, на гитхабе.

Jekyll написан на ruby, поэтому установка следующая (пример для ubuntu):

# Устанавливаем ruby

sudo apt-get install ruby ruby-dev

# Устанавливаем jekyll

sudo gem install jekyll -V

# Создаем новый статичный сайт и запускаем встроенный сервер

jekyll new my-awesome-site
cd my-awesome-site
jekyll serve

# Заходим в браузере на страницу http://localhost:4000 и смотрим результат.

Все просто.

Практически все, что здесь написано, есть на официальном сайте.

сайты

Просмотр изображений перед загрузкой на сайт

Это можно сделать, используя следующую функцию:

function readURL(input, img_container) {
    if (input.files && input.files[0]) {
        var reader = new FileReader();
        reader.onload = function (e) { img_container.attr(‘src’, e.target.result); };
        reader.readAsDataURL(input.files[0]);
    }
}

И использовать, например, так:

$(‘#myFileField’).change(function(e) {
    readURL(e.target, $(‘#myImgPreview’));
});

При верстке:

<div><input type="file" id="myFileField" /></div>
<div><img id="myImgPreview" /></div>

Источник: http://stackoverflow.com/questions/4459379/preview-an-image-before-it-is-uploaded

javascript

Интересные ссылки для ознакомления

NodeJS

http://jsman.ru/express/ — подробно про MVC-фреймворк Express.

Обработка изображений

http://clippingmagic.com — Убрать фон с изображения.

Регулярные выражения

http://www.rubular.com/ — Простое и быстрое тестирование регулярных выражений. Ничего лишнего.

http://gskinner.com/RegExr/ — Когда требуется по регулярному выражению заменить исходный текст. Плюс есть множество готовых примеров регулярок.

Форматирование и валидация кода

http://jsbeautifier.org/ — Красиво форматирует с переносами исходный код. Просто и удобно.

http://jsonlint.com/ — Валидатор JSON. При валидации еще и форматирует его.

Верстка HTML/CSS

http://htmlbook.ru/ — Крайне полезный сайт для начинающих верстальщиков или если вы что-то забыли. Удобный каталог тэгов и правил с подробным описанием и примерами.

Дизайн

https://kuler.adobe.com/ — Сочетание цветов от Adobe.

Регистрация доменов/Хостинг

https://2domains.ru — Дешевая регистрация доменов. Страница логина

Схемы и аналитика

https://www.draw.io/ — Удобная рисовалка схем онлайн (онлайн аналог Visio). Есть возможность связать ее с Google Drive.

Системы контроля версий

http://git-scm.com/book/ru — книга про git.

http://www.yearofmoo.com/2011/04/minify-css-and-js-with-git-hooks.html — хуки в git’е для минификации css и js.

Backbone

https://github.com/AlexFadeev/backbone-fundamentals — Перевод книги Addy Osmani о Backbone.

Профайлинг в Google Chrome

http://habrahabr.ru/post/149053/ — По-русски.

https://developers.google.com/chrome-developer-tools/docs/heap-profiling — От Google’а.

Управление командой

http://lean-lead.blogspot.ru — «записки тимлида». Хороший блог, можно почерпнуть много интересного.

QA

http://testitquickly.com/2009/09/09/vvodeste-loginu-la-adnaklassni6i/ — тестирование регистрации/логина.

Python

http://www.ibm.com/developerworks/library/l-cpmod/index.html — создание документации через pydoc.

AngularJS

http://angular.ru — документация по angularjs на русском языке.

ссылки

Небольшая подборка js-библиотек отрисовки диаграмм

javascript ссылки

UMongo

UMongo - аналог MySQL Workbench для MongoDB.

http://mongodb-tools.com/tool/umongo/

mongo