Первичная настройка, повторная проверка: копии без ключевых носителей СКЗИ (--one-file-system, без keymedia), без отпечатка железа и списка компонентов; восстановление на новый сервер — пароль базы bj из копии, база и пользователь ИШ; ключ для контура без канала запоминается и подключается при настройке канала; первый настроенный канал становится рабочим контуром; справочник сертификатов перечитывается после ключа и смены контура; шлюз НРД — шаг 7, ключ — шаг 8 (ключ ставится в профиль ИШ); подсказка контура ключа по сертификату; ИШ: параметры работающего шлюза не перезаписываются; без чужого кода отправителя и получателя по умолчанию; прокси для выхода в интернет; установка с образа без интернета; HTTPS — новый сертификат при смене адреса; bj-network — без cloud-init; проверка готовности: справочник участников, сетевые доступы, учётные записи, последний обмен с НРД
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -232,10 +232,15 @@ func (in *installer) stepPrecheck() (string, error) {
|
||||
}
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second)
|
||||
defer cancel()
|
||||
// прокси организации — из окружения (https_proxy / HTTPS_PROXY), как у curl
|
||||
req, _ := http.NewRequestWithContext(ctx, http.MethodGet, in.server+"/healthz", nil)
|
||||
resp, err := http.DefaultClient.Do(req)
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("нет связи с %s: %v", in.server, err)
|
||||
if in.bundle != "" {
|
||||
// установка с образа — всё нужное на диске; ключ продукта и обновления — позже, когда будет связь
|
||||
return fmt.Sprintf("%s, %.1f ГБ памяти; нет связи с %s — ставим с образа, ключ продукта введёте в браузере, когда появится доступ (можно через прокси: «Настройка → Сервер»)", name, float64(mem)/(1<<30), in.server), nil
|
||||
}
|
||||
return "", fmt.Errorf("нет связи с %s: %v (если выход в интернет через прокси — запустите с переменной https_proxy=http://прокси:порт)", in.server, err)
|
||||
}
|
||||
resp.Body.Close()
|
||||
return fmt.Sprintf("%s, %.1f ГБ памяти, связь с сервером лицензий есть", name, float64(mem)/(1<<30)), nil
|
||||
|
||||
@@ -37,7 +37,9 @@ const serviceName = "bj-server"
|
||||
|
||||
func main() {
|
||||
addr := getenv("BJ_HTTP_ADDR", ":8080")
|
||||
defaultSender := m2m.DeponentCode(getenv("BJ_M2M_SENDER", "MC0079200000"))
|
||||
// Код отправителя — код участника нашей организации из настроек (шаг «Организация»); переменная — только
|
||||
// для старых установок. Чужого кода по умолчанию нет: без организации переводы не формируются.
|
||||
defaultSender := m2m.DeponentCode(getenv("BJ_M2M_SENDER", ""))
|
||||
defaultReceiver := m2m.DeponentCode(getenv("BJ_M2M_RECEIVER", "MC0010300000"))
|
||||
setupPath := os.Getenv("BJ_SETUP_PATH")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user